diff --git a/.bzrignore b/.bzrignore index e2d1636ddd..a071a4f2f6 100644 --- a/.bzrignore +++ b/.bzrignore @@ -12,6 +12,7 @@ resources/images.qrc resources/scripts.pickle resources/ebook-convert-complete.pickle resources/builtin_recipes.xml +resources/builtin_recipes.zip setup/installer/windows/calibre/build.log src/calibre/translations/.errors src/cssutils/.svn/ diff --git a/Changelog.yaml b/Changelog.yaml index 8fecf3d95e..33ab86bc1d 100644 --- a/Changelog.yaml +++ b/Changelog.yaml @@ -19,6 +19,210 @@ # new recipes: # - title: + +- version: 0.7.54 + date: 2011-04-08 + + new features: + - title: "New output format, HTMLZ which is a single HTML file with its associated images/stylesheets in a zipped up file" + description: "Useful when you want to convert your ebook into a single HTML file for easy editing. Note that this output plugin is still new and needs testing" + + - title: "When dealing with ZIP/RAR archives, use the file header rather than the file extension to detrmine the file type, when possible. This fixes the common case of CBZ files being actually cbr files and vice versa" + + - title: "Support for the Motorola Atrix" + + - title: "Allow the icons in the toolbar to be turned off completely via Preferences->Look & Feel" + + - title: "When downloading metadata use the gzip transfer encoding when possible for a speedup." + tickets: [749304] + + bug fixes: + - title: "Conversion pipeline: Workaround for bug in lxml that causes a massive mem leak on windows and OS X when the input document contains non ASCII CSS selectors." + tickets: [754555] + + - title: "Conversion pipeline: Handle inline ' + output = [u'
'] + [css] + [u''] + output + [u''] + return ''.join(output) + + def dump_text(self, elem, stylizer, page): + ''' + @elem: The element in the etree that we are working on. + @stylizer: The style information attached to the element. + ''' + + # We can only processes tags. If there isn't a tag return any text. + if not isinstance(elem.tag, basestring) \ + or namespace(elem.tag) != XHTML_NS: + p = elem.getparent() + if p is not None and isinstance(p.tag, basestring) and namespace(p.tag) == XHTML_NS \ + and elem.tail: + return [elem.tail] + return [''] + + # Setup our variables. + text = [''] + tags = [] + tag = barename(elem.tag) + attribs = elem.attrib + + if tag == 'body': + tag = 'div' + tags.append(tag) + + # Remove attributes we won't want. + if 'style' in attribs: + del attribs['style'] + + # Turn the rest of the attributes into a string we can write with the tag. + at = '' + for k, v in attribs.items(): + at += ' %s="%s"' % (k, prepare_string_for_xml(v, attribute=True)) + + # Write the tag. + text.append('<%s%s>' % (tag, at)) + + # Process tags that contain text. + if hasattr(elem, 'text') and elem.text: + text.append(elem.text) + + # Recurse down into tags within the tag we are in. + for item in elem: + text += self.dump_text(item, stylizer, page) + + # Close all open tags. + tags.reverse() + for t in tags: + text.append('%s>' % t) + + # Add the text that is outside of the tag. + if hasattr(elem, 'tail') and elem.tail: + text.append(elem.tail) + + return text + + +def oeb2html_no_css(oeb_book, log, opts): + izer = OEB2HTMLNoCSSizer(log) + html = izer.oeb2html(oeb_book, opts) + images = izer.images + return (html, images) + +def oeb2html_inline_css(oeb_book, log, opts): + izer = OEB2HTMLInlineCSSizer(log) + html = izer.oeb2html(oeb_book, opts) + images = izer.images + return (html, images) + +def oeb2html_class_css(oeb_book, log, opts): + izer = OEB2HTMLClassCSSizer(log) + setattr(opts, 'class_style', 'inline') + html = izer.oeb2html(oeb_book, opts) + images = izer.images + return (html, images) diff --git a/src/calibre/ebooks/htmlz/output.py b/src/calibre/ebooks/htmlz/output.py new file mode 100644 index 0000000000..7cdf04bcdb --- /dev/null +++ b/src/calibre/ebooks/htmlz/output.py @@ -0,0 +1,83 @@ +# -*- coding: utf-8 -*- + +from __future__ import (unicode_literals, division, absolute_import, print_function) + +__license__ = 'GPL 3' +__copyright__ = '2011, John Schember%s\n
" % (HTML_PLACEHOLDER % i), html + "\n") text = text.replace(HTML_PLACEHOLDER % i, html) @@ -1031,7 +1028,6 @@ class BlockGuru: remainder of the original list""" items = [] - item = -1 i = 0 # to keep track of where we are @@ -1187,7 +1183,7 @@ class Markdown: RAWHTMLTEXTPOSTPROCESSOR] self.prePatterns = [] - + self.inlinePatterns = [DOUBLE_BACKTICK_PATTERN, BACKTICK_PATTERN, @@ -1241,7 +1237,7 @@ class Markdown: configs_for_ext = configs[ext] else: configs_for_ext = [] - extension = module.makeExtension(configs_for_ext) + extension = module.makeExtension(configs_for_ext) extension.extendMarkdown(self, globals()) @@ -1310,7 +1306,7 @@ class Markdown: else: buffer.append(line) self._processSection(self.top_element, buffer) - + #self._processSection(self.top_element, self.lines) # Not sure why I put this in but let's leave it for now. @@ -1426,7 +1422,7 @@ class Markdown: for item in list: el.appendChild(item) - + def _processUList(self, parent_elem, lines, inList): self._processList(parent_elem, lines, inList, @@ -1458,7 +1454,7 @@ class Markdown: i = 0 # a counter to keep track of where we are - for line in lines: + for line in lines: loose = 0 if not line.strip(): @@ -1477,7 +1473,7 @@ class Markdown: # Check if the next non-blank line is still a part of the list if ( RE.regExp['ul'].match(next) or - RE.regExp['ol'].match(next) or + RE.regExp['ol'].match(next) or RE.regExp['tabbed'].match(next) ): # get rid of any white space in the line items[item].append(line.strip()) @@ -1618,7 +1614,7 @@ class Markdown: i = 0 while i < len(parts): - + x = parts[i] if isinstance(x, (str, unicode)): @@ -1641,14 +1637,14 @@ class Markdown: parts[i] = self.doc.createTextNode(x) return parts - + def _applyPattern(self, line, pattern, patternIndex): """ Given a pattern name, this function checks if the line fits the pattern, creates the necessary elements, and returns back a list consisting of NanoDom elements and/or strings. - + @param line: the text to be processed @param pattern: the pattern to be checked @@ -1676,19 +1672,19 @@ class Markdown: if not node.nodeName in ["code", "pre"]: for child in node.childNodes: if isinstance(child, TextNode): - + result = self._handleInline(child.value, patternIndex+1) - + if result: if result == [child]: continue - + result.reverse() #to make insertion easier position = node.childNodes.index(child) - + node.removeChild(child) for item in result: @@ -1699,7 +1695,7 @@ class Markdown: self.doc.createTextNode(item)) else: node.insertChild(position, item) - + @@ -1798,14 +1794,14 @@ def markdownFromFile(input = None, def markdown(text, extensions = [], safe_mode = False): - + message(DEBUG, "in markdown.markdown(), received text:\n%s" % text) extension_names = [] extension_configs = {} - + for ext in extensions: - pos = ext.find("(") + pos = ext.find("(") if pos == -1: extension_names.append(ext) else: @@ -1820,7 +1816,7 @@ def markdown(text, safe_mode = safe_mode) return md.convert(text) - + class Extension: @@ -1845,26 +1841,11 @@ Python 2.3 or higher required for advanced command line options. For lower versions of Python use: %s INPUT_FILE > OUTPUT_FILE - + """ % EXECUTABLE_NAME_FOR_USAGE def parse_options(): - - try: - optparse = __import__("optparse") - except: - if len(sys.argv) == 2: - return {'input': sys.argv[1], - 'output': None, - 'message_threshold': CRITICAL, - 'safe': False, - 'extensions': [], - 'encoding': None } - - else: - print OPTPARSE_WARNING - return None - + import optparse parser = optparse.OptionParser(usage="%prog INPUTFILE [options]") parser.add_option("-f", "--file", dest="filename", @@ -1881,7 +1862,7 @@ def parse_options(): parser.add_option("-s", "--safe", dest="safe", default=False, metavar="SAFE_MODE", help="same mode ('replace', 'remove' or 'escape' user's HTML tag)") - + parser.add_option("--noisy", action="store_const", const=DEBUG, dest="verbose", help="print debug messages") @@ -1914,14 +1895,14 @@ def main(): if not options: sys.exit(0) - + markdownFromFile(**options) if __name__ == '__main__': sys.exit(main()) """ Run Markdown from the command line. """ - + diff --git a/src/calibre/ebooks/metadata/amazon.py b/src/calibre/ebooks/metadata/amazon.py index 8e4dd1dd27..4100439feb 100644 --- a/src/calibre/ebooks/metadata/amazon.py +++ b/src/calibre/ebooks/metadata/amazon.py @@ -108,7 +108,7 @@ def _get_cover_url(br, asin): q = 'http://amzn.com/'+asin try: raw = br.open_novisit(q).read() - except Exception, e: + except Exception as e: if callable(getattr(e, 'getcode', None)) and \ e.getcode() == 404: return None @@ -139,7 +139,7 @@ def get_metadata(br, asin, mi): q = 'http://amzn.com/'+asin try: raw = br.open_novisit(q).read() - except Exception, e: + except Exception as e: if callable(getattr(e, 'getcode', None)) and \ e.getcode() == 404: return False diff --git a/src/calibre/ebooks/metadata/amazonfr.py b/src/calibre/ebooks/metadata/amazonfr.py index 156fff3d75..248c8d9ed0 100644 --- a/src/calibre/ebooks/metadata/amazonfr.py +++ b/src/calibre/ebooks/metadata/amazonfr.py @@ -33,7 +33,7 @@ class AmazonFr(MetadataSource): try: self.results = search(self.title, self.book_author, self.publisher, self.isbn, max_results=10, verbose=self.verbose, lang='fr') - except Exception, e: + except Exception as e: self.exception = e self.tb = traceback.format_exc() @@ -50,7 +50,7 @@ class AmazonEs(MetadataSource): try: self.results = search(self.title, self.book_author, self.publisher, self.isbn, max_results=10, verbose=self.verbose, lang='es') - except Exception, e: + except Exception as e: self.exception = e self.tb = traceback.format_exc() @@ -67,7 +67,7 @@ class AmazonEn(MetadataSource): try: self.results = search(self.title, self.book_author, self.publisher, self.isbn, max_results=10, verbose=self.verbose, lang='en') - except Exception, e: + except Exception as e: self.exception = e self.tb = traceback.format_exc() @@ -84,7 +84,7 @@ class AmazonDe(MetadataSource): try: self.results = search(self.title, self.book_author, self.publisher, self.isbn, max_results=10, verbose=self.verbose, lang='de') - except Exception, e: + except Exception as e: self.exception = e self.tb = traceback.format_exc() @@ -103,7 +103,7 @@ class Amazon(MetadataSource): try: self.results = search(self.title, self.book_author, self.publisher, self.isbn, max_results=10, verbose=self.verbose, lang='all') - except Exception, e: + except Exception as e: self.exception = e self.tb = traceback.format_exc() @@ -193,7 +193,7 @@ class Query(object): try: raw = browser.open_novisit(self.urldata, timeout=timeout).read() - except Exception, e: + except Exception as e: report(verbose) if callable(getattr(e, 'getcode', None)) and \ e.getcode() == 404: @@ -226,7 +226,7 @@ class Query(object): try: urldata = self.urldata + '&page=' + str(i) raw = browser.open_novisit(urldata, timeout=timeout).read() - except Exception, e: + except Exception as e: continue if 'There was an error reading from file:
") + _file + "
'+_('The template %s is invalid:')%tmpl + \
' There was an error reading from file: Could not create recipe. Error: Could not create recipe. Error: Could not create recipe. Error:
'+unicode(err), show=True)
diff --git a/src/calibre/gui2/dialogs/book_info.ui b/src/calibre/gui2/dialogs/book_info.ui
index 412126a610..9e9e71eda0 100644
--- a/src/calibre/gui2/dialogs/book_info.ui
+++ b/src/calibre/gui2/dialogs/book_info.ui
@@ -7,15 +7,25 @@
") + _file + "
"+str(e))
d.exec_()
diff --git a/src/calibre/gui2/dialogs/scheduler.py b/src/calibre/gui2/dialogs/scheduler.py
index 347eeb7019..9b1fe67f29 100644
--- a/src/calibre/gui2/dialogs/scheduler.py
+++ b/src/calibre/gui2/dialogs/scheduler.py
@@ -9,6 +9,7 @@ Scheduler for automated recipe downloads
from datetime import timedelta
import calendar, textwrap
+from collections import OrderedDict
from PyQt4.Qt import QDialog, Qt, QTime, QObject, QMenu, QHBoxLayout, \
QAction, QIcon, QMutex, QTimer, pyqtSignal, QWidget, QGridLayout, \
@@ -20,7 +21,6 @@ from calibre.web.feeds.recipes.model import RecipeModel
from calibre.ptempfile import PersistentTemporaryFile
from calibre.utils.date import utcnow
from calibre.utils.network import internet_connected
-from calibre.utils.ordered_dict import OrderedDict
from calibre import force_unicode
def convert_day_time_schedule(val):
diff --git a/src/calibre/gui2/dialogs/tag_editor.py b/src/calibre/gui2/dialogs/tag_editor.py
index 6bd8eb7dbe..bf3bb9fd4e 100644
--- a/src/calibre/gui2/dialogs/tag_editor.py
+++ b/src/calibre/gui2/dialogs/tag_editor.py
@@ -122,6 +122,8 @@ class TagEditor(QDialog, Ui_TagEditor):
tags = unicode(self.add_tag_input.text()).split(',')
for tag in tags:
tag = tag.strip()
+ if not tag:
+ continue
for item in self.available_tags.findItems(tag, Qt.MatchFixedString):
self.available_tags.takeItem(self.available_tags.row(item))
if tag not in self.tags:
diff --git a/src/calibre/gui2/dialogs/user_profiles.py b/src/calibre/gui2/dialogs/user_profiles.py
index 5453a90766..d66d02d211 100644
--- a/src/calibre/gui2/dialogs/user_profiles.py
+++ b/src/calibre/gui2/dialogs/user_profiles.py
@@ -237,7 +237,7 @@ class %(classname)s(%(base_class)s):
try:
compile_recipe(src)
- except Exception, err:
+ except Exception as err:
error_dialog(self, _('Invalid input'),
_('
%s')%str(err)).exec_()
return
@@ -246,7 +246,7 @@ class %(classname)s(%(base_class)s):
src = unicode(self.source_code.toPlainText())
try:
title = compile_recipe(src).title
- except Exception, err:
+ except Exception as err:
error_dialog(self, _('Invalid input'),
_('
%s')%str(err)).exec_()
return
@@ -333,7 +333,7 @@ class %(classname)s(%(base_class)s):
try:
profile = open(file, 'rb').read().decode('utf-8')
title = compile_recipe(profile).title
- except Exception, err:
+ except Exception as err:
error_dialog(self, _('Invalid input'),
_('
%s')%str(err)).exec_()
return
diff --git a/src/calibre/gui2/dnd.py b/src/calibre/gui2/dnd.py
index 928de72578..b602e4112a 100644
--- a/src/calibre/gui2/dnd.py
+++ b/src/calibre/gui2/dnd.py
@@ -35,7 +35,7 @@ class Worker(Thread): # {{{
try:
br = browser()
br.retrieve(self.url, self.fpath, self.callback)
- except Exception, e:
+ except Exception as e:
self.err = as_unicode(e)
import traceback
self.tb = traceback.format_exc()
@@ -143,21 +143,27 @@ def dnd_has_extension(md, extensions):
urls = [unicode(u.toString()) for u in
md.urls()]
purls = [urlparse(u) for u in urls]
+ paths = [u2p(x) for x in purls]
if DEBUG:
prints('URLS:', urls)
- prints('Paths:', [u2p(x) for x in purls])
+ prints('Paths:', paths)
- exts = frozenset([posixpath.splitext(u.path)[1][1:].lower() for u in
- purls])
+ exts = frozenset([posixpath.splitext(u)[1][1:].lower() for u in
+ paths])
return bool(exts.intersection(frozenset(extensions)))
return False
+def _u2p(raw):
+ path = raw
+ if iswindows and path.startswith('/'):
+ path = path[1:]
+ return path.replace('/', os.sep)
+
def u2p(url):
path = url.path
- if iswindows:
- if path.startswith('/'):
- path = path[1:]
- ans = path.replace('/', os.sep)
+ ans = _u2p(path)
+ if not os.path.exists(ans):
+ ans = _u2p(url.path + '#' + url.fragment)
if os.path.exists(ans):
return ans
# Try unquoting the URL
@@ -189,8 +195,9 @@ def dnd_get_image(md, image_exts=IMAGE_EXTENSIONS):
md.urls()]
purls = [urlparse(u) for u in urls]
# First look for a local file
- images = [u2p(x) for x in purls if x.scheme in ('', 'file') and
- posixpath.splitext(urllib.unquote(x.path))[1][1:].lower() in
+ images = [u2p(x) for x in purls if x.scheme in ('', 'file')]
+ images = [x for x in images if
+ posixpath.splitext(urllib.unquote(x))[1][1:].lower() in
image_exts]
images = [x for x in images if os.path.exists(x)]
p = QPixmap()
@@ -235,8 +242,9 @@ def dnd_get_files(md, exts):
md.urls()]
purls = [urlparse(u) for u in urls]
# First look for a local file
- local_files = [u2p(x) for x in purls if x.scheme in ('', 'file') and
- posixpath.splitext(urllib.unquote(x.path))[1][1:].lower() in
+ local_files = [u2p(x) for x in purls if x.scheme in ('', 'file')]
+ local_files = [ p for p in local_files if
+ posixpath.splitext(urllib.unquote(p))[1][1:].lower() in
exts]
local_files = [x for x in local_files if os.path.exists(x)]
if local_files:
diff --git a/src/calibre/gui2/email.py b/src/calibre/gui2/email.py
index c84b3180f7..c8adeb7d31 100644
--- a/src/calibre/gui2/email.py
+++ b/src/calibre/gui2/email.py
@@ -6,9 +6,7 @@ __license__ = 'GPL v3'
__copyright__ = '2010, Kovid Goyal
%s'%html) + else: + f = self.job.log_file + f.seek(self.next_pos) + more = f.read() + self.next_pos = f.tell() + if more: + self.log.appendPlainText(more.decode('utf-8', 'replace')) class JobsButton(QFrame): @@ -441,3 +474,5 @@ class JobsDialog(QDialog, Ui_JobsDialog): def hide(self, *args): self.save_state() return QDialog.hide(self, *args) +# }}} + diff --git a/src/calibre/gui2/layout.py b/src/calibre/gui2/layout.py index e8a4e79384..e98817a02f 100644 --- a/src/calibre/gui2/layout.py +++ b/src/calibre/gui2/layout.py @@ -7,12 +7,12 @@ __docformat__ = 'restructuredtext en' from functools import partial -from PyQt4.Qt import QIcon, Qt, QWidget, QToolBar, QSize, \ - pyqtSignal, QToolButton, QMenu, \ - QObject, QVBoxLayout, QSizePolicy, QLabel, QHBoxLayout, QActionGroup +from PyQt4.Qt import (QIcon, Qt, QWidget, QToolBar, QSize, + pyqtSignal, QToolButton, QMenu, QMenuBar, QAction, + QObject, QVBoxLayout, QSizePolicy, QLabel, QHBoxLayout, QActionGroup) -from calibre.constants import __appname__ +from calibre.constants import __appname__, isosx from calibre.gui2.search_box import SearchBox2, SavedSearchBox from calibre.gui2.throbber import ThrobbingButton from calibre.gui2 import gprefs @@ -238,18 +238,117 @@ class Spacer(QWidget): # {{{ self.l.addStretch(10) # }}} -class ToolBar(QToolBar): # {{{ +class MenuAction(QAction): # {{{ - def __init__(self, donate, location_manager, child_bar, parent): - QToolBar.__init__(self, parent) + def __init__(self, clone, parent): + QAction.__init__(self, clone.text(), parent) + self.clone = clone + clone.changed.connect(self.clone_changed) + + def clone_changed(self): + self.setText(self.clone.text()) +# }}} + +class MenuBar(QMenuBar): # {{{ + + def __init__(self, location_manager, parent): + QMenuBar.__init__(self, parent) self.gui = parent - self.child_bar = child_bar + self.setNativeMenuBar(True) + + self.location_manager = location_manager + self.location_manager.locations_changed.connect(self.build_bar) + self.added_actions = [] + + self.donate_action = QAction(_('Donate'), self) + self.donate_menu = QMenu() + self.donate_menu.addAction(self.gui.donate_action) + self.donate_action.setMenu(self.donate_menu) + self.build_bar() + + def build_bar(self, changed_action=None): + showing_device = self.location_manager.has_device + actions = '-device' if showing_device else '' + actions = gprefs['action-layout-menubar'+actions] + + show_main = len(actions) > 0 + self.setVisible(show_main) + + for ac in self.added_actions: + m = ac.menu() + if m is not None: + m.setVisible(False) + + self.clear() + self.added_actions = [] + self.action_map = {} + + for what in actions: + if what is None: + continue + elif what == 'Location Manager': + for ac in self.location_manager.available_actions: + ac = self.build_menu(ac) + self.addAction(ac) + self.added_actions.append(ac) + elif what == 'Donate': + self.addAction(self.donate_action) + elif what in self.gui.iactions: + action = self.gui.iactions[what] + ac = self.build_menu(action.qaction) + self.addAction(ac) + self.added_actions.append(ac) + + def build_menu(self, action): + m = action.menu() + ac = MenuAction(action, self) + if m is None: + m = QMenu() + m.addAction(action) + ac.setMenu(m) + return ac + +# }}} + +class BaseToolBar(QToolBar): # {{{ + + def __init__(self, parent): + QToolBar.__init__(self, parent) self.setContextMenuPolicy(Qt.PreventContextMenu) self.setMovable(False) self.setFloatable(False) self.setOrientation(Qt.Horizontal) self.setAllowedAreas(Qt.TopToolBarArea|Qt.BottomToolBarArea) self.setStyleSheet('QToolButton:checked { font-weight: bold }') + self.preferred_width = self.sizeHint().width() + + def resizeEvent(self, ev): + QToolBar.resizeEvent(self, ev) + style = self.get_text_style() + self.setToolButtonStyle(style) + + def get_text_style(self): + style = Qt.ToolButtonTextUnderIcon + s = gprefs['toolbar_icon_size'] + if s != 'off': + p = gprefs['toolbar_text'] + if p == 'never': + style = Qt.ToolButtonIconOnly + elif p == 'auto' and self.preferred_width > self.width()+35: + style = Qt.ToolButtonIconOnly + return style + + def contextMenuEvent(self, *args): + pass + +# }}} + +class ToolBar(BaseToolBar): # {{{ + + def __init__(self, donate, location_manager, child_bar, parent): + BaseToolBar.__init__(self, parent) + self.gui = parent + self.child_bar = child_bar self.donate_button = donate self.apply_settings() @@ -259,30 +358,31 @@ class ToolBar(QToolBar): # {{{ donate.setCursor(Qt.PointingHandCursor) self.added_actions = [] self.build_bar() - self.preferred_width = self.sizeHint().width() self.setAcceptDrops(True) def apply_settings(self): sz = gprefs['toolbar_icon_size'] - sz = {'small':24, 'medium':48, 'large':64}[sz] + sz = {'off':0, 'small':24, 'medium':48, 'large':64}[sz] self.setIconSize(QSize(sz, sz)) self.child_bar.setIconSize(QSize(sz, sz)) style = Qt.ToolButtonTextUnderIcon - if gprefs['toolbar_text'] == 'never': + if sz > 0 and gprefs['toolbar_text'] == 'never': style = Qt.ToolButtonIconOnly self.setToolButtonStyle(style) self.child_bar.setToolButtonStyle(style) self.donate_button.set_normal_icon_size(sz, sz) - def contextMenuEvent(self, *args): - pass - def build_bar(self): - self.child_bar.setVisible(gprefs['show_child_bar']) self.showing_donate = False showing_device = self.location_manager.has_device - actions = '-device' if showing_device else '' - actions = gprefs['action-layout-toolbar'+actions] + mactions = '-device' if showing_device else '' + mactions = gprefs['action-layout-toolbar'+mactions] + cactions = gprefs['action-layout-toolbar-child'] + + show_main = len(mactions) > 0 + self.setVisible(show_main) + show_child = len(cactions) > 0 + self.child_bar.setVisible(show_child) for ac in self.added_actions: m = ac.menu() @@ -292,63 +392,41 @@ class ToolBar(QToolBar): # {{{ self.clear() self.child_bar.clear() self.added_actions = [] - self.spacers = [Spacer(self.child_bar), Spacer(self.child_bar), - Spacer(self), Spacer(self)] - self.child_bar.addWidget(self.spacers[0]) - if gprefs['show_child_bar']: - self.addWidget(self.spacers[2]) - for what in actions: - if what is None and not gprefs['show_child_bar']: - self.addSeparator() - elif what == 'Location Manager': - for ac in self.location_manager.available_actions: - self.addAction(ac) - self.added_actions.append(ac) - self.setup_tool_button(ac, QToolButton.MenuButtonPopup) - elif what == 'Donate': - self.d_widget = QWidget() - self.d_widget.setLayout(QVBoxLayout()) - self.d_widget.layout().addWidget(self.donate_button) - self.addWidget(self.d_widget) - self.showing_donate = True - elif what in self.gui.iactions: - action = self.gui.iactions[what] - bar = self - if action.action_type == 'current' and gprefs['show_child_bar']: - bar = self.child_bar - bar.addAction(action.qaction) - self.added_actions.append(action.qaction) - self.setup_tool_button(action.qaction, action.popup_type) + for bar, actions in ((self, mactions), (self.child_bar, cactions)): + for what in actions: + if what is None: + bar.addSeparator() + elif what == 'Location Manager': + for ac in self.location_manager.available_actions: + bar.addAction(ac) + bar.added_actions.append(ac) + bar.setup_tool_button(bar, ac, QToolButton.MenuButtonPopup) + elif what == 'Donate': + self.d_widget = QWidget() + self.d_widget.setLayout(QVBoxLayout()) + self.d_widget.layout().addWidget(self.donate_button) + if isosx: + self.d_widget.setStyleSheet('QWidget, QToolButton {background-color: none; border: none; }') + bar.addWidget(self.d_widget) + self.showing_donate = True + elif what in self.gui.iactions: + action = self.gui.iactions[what] + bar.addAction(action.qaction) + self.added_actions.append(action.qaction) + self.setup_tool_button(bar, action.qaction, action.popup_type) + self.preferred_width = self.sizeHint().width() + self.child_bar.preferred_width = self.child_bar.sizeHint().width() - self.child_bar.addWidget(self.spacers[1]) - if gprefs['show_child_bar']: - self.addWidget(self.spacers[3]) - else: - for s in self.spacers[2:]: - s.setVisible(False) - - def setup_tool_button(self, ac, menu_mode=None): - ch = self.widgetForAction(ac) + def setup_tool_button(self, bar, ac, menu_mode=None): + ch = bar.widgetForAction(ac) if ch is None: ch = self.child_bar.widgetForAction(ac) ch.setCursor(Qt.PointingHandCursor) ch.setAutoRaise(True) if ac.menu() is not None and menu_mode is not None: ch.setPopupMode(menu_mode) - - def resizeEvent(self, ev): - QToolBar.resizeEvent(self, ev) - style = Qt.ToolButtonTextUnderIcon - p = gprefs['toolbar_text'] - if p == 'never': - style = Qt.ToolButtonIconOnly - - if p == 'auto' and self.preferred_width > self.width()+35 and \ - not gprefs['show_child_bar']: - style = Qt.ToolButtonIconOnly - - self.setToolButtonStyle(style) + return ch def database_changed(self, db): pass @@ -427,11 +505,14 @@ class MainWindowMixin(object): # {{{ self.iactions['Fetch News'].init_scheduler(db) self.search_bar = SearchBar(self) - self.child_bar = QToolBar(self) + self.child_bar = BaseToolBar(self) self.tool_bar = ToolBar(self.donate_button, self.location_manager, self.child_bar, self) self.addToolBar(Qt.TopToolBarArea, self.tool_bar) self.addToolBar(Qt.BottomToolBarArea, self.child_bar) + self.menu_bar = MenuBar(self.location_manager, self) + self.setMenuBar(self.menu_bar) + self.setUnifiedTitleAndToolBarOnMac(True) l = self.centralwidget.layout() l.addWidget(self.search_bar) diff --git a/src/calibre/gui2/library/delegates.py b/src/calibre/gui2/library/delegates.py index 3a090f8102..ac8568af07 100644 --- a/src/calibre/gui2/library/delegates.py +++ b/src/calibre/gui2/library/delegates.py @@ -353,7 +353,7 @@ class CcBoolDelegate(QStyledItemDelegate): # {{{ editor = DelegateCB(parent) items = [_('Y'), _('N'), ' '] icons = [I('ok.png'), I('list_remove.png'), I('blank.png')] - if tweaks['bool_custom_columns_are_tristate'] == 'no': + if not index.model().db.prefs.get('bools_are_tristate'): items = items[:-1] icons = icons[:-1] for icon, text in zip(icons, items): @@ -367,7 +367,7 @@ class CcBoolDelegate(QStyledItemDelegate): # {{{ def setEditorData(self, editor, index): m = index.model() val = m.db.data[index.row()][m.custom_columns[m.column_map[index.column()]]['rec_index']] - if tweaks['bool_custom_columns_are_tristate'] == 'no': + if not m.db.prefs.get('bools_are_tristate'): val = 1 if not val else 0 else: val = 2 if val is None else 1 if not val else 0 @@ -398,7 +398,7 @@ class CcTemplateDelegate(QStyledItemDelegate): # {{{ val = unicode(editor.textbox.toPlainText()) try: validation_formatter.validate(val) - except Exception, err: + except Exception as err: error_dialog(self.parent(), _('Invalid template'), '
'+_('The template %s is invalid:')%val + \
' There was an error reading from file: '+_('calibre is downloading metadata from: ') +
+ ', '.join(names))
+ self.top.setWordWrap(True)
+ l.addWidget(self.top, 0, 0)
+
+ self.results_view = ResultsView(self)
+ self.results_view.book_selected.connect(self.book_selected.emit)
+ self.get_result = self.results_view.get_result
+ l.addWidget(self.results_view, 1, 0)
+
+ self.comments_view = Comments(self)
+ l.addWidget(self.comments_view, 1, 1)
+
+ self.results_view.show_details_signal.connect(self.comments_view.show_data)
+
+ self.query = QLabel('download starting...')
+ f = self.query.font()
+ f.setPointSize(f.pointSize()-2)
+ self.query.setFont(f)
+ self.query.setWordWrap(True)
+ l.addWidget(self.query, 2, 0, 1, 2)
+
+ self.comments_view.show_data(' ' +
+ _('Failed to find any books that '
+ 'match your search. Try making the search less '
+ 'specific. For example, use only the author\'s '
+ 'last name and a single distinctive word from '
+ 'the title. To see the full log, click Show Details.'),
+ show=True, det_msg=log)
+ self.rejected.emit()
+ return
+
+ self.results_view.show_results(self.worker.results)
+
+ self.comments_view.show_data('''
+ '+_('Downloading covers for %s, please wait...')%book.title)
+ self.covers_view.start()
+
+ self.worker = CoverWorker(self.log, self.abort, self.title,
+ self.authors, book.identifiers)
+ self.worker.start()
+ QTimer.singleShot(50, self.check)
+ self.covers_view.setFocus(Qt.OtherFocusReason)
+
+ def check(self):
+ if self.worker.is_alive() and not self.abort.is_set():
+ QTimer.singleShot(50, self.check)
+ try:
+ self.process_result(self.worker.rq.get_nowait())
+ except Empty:
+ pass
+ else:
+ self.process_results()
+
+ def process_results(self):
+ while self.continue_processing:
+ try:
+ self.process_result(self.worker.rq.get_nowait())
+ except Empty:
+ break
+
+ self.covers_view.clear_failed()
+
+ if self.worker.error is not None:
+ error_dialog(self, _('Download failed'),
+ _('Failed to download any covers, click'
+ ' "Show details" for details.'),
+ det_msg=self.worker.error, show=True)
+
+ num = self.covers_view.model().rowCount()
+ if num < 2:
+ txt = _('Could not find any covers for %s')%self.book.title
+ else:
+ txt = _('Found %d covers of %s. Pick the one you like'
+ ' best.')%(num-1, self.title)
+ self.msg.setText(txt)
+
+ self.finished.emit()
+
+ def process_result(self, result):
+ if not self.continue_processing:
+ return
+ plugin, width, height, fmt, data = result
+ self.covers_view.model().update_result(plugin, width, height, data)
+
+ def cleanup(self):
+ self.covers_view.delegate.stop_animation()
+ self.continue_processing = False
+
+ def cancel(self):
+ self.continue_processing = False
+ self.abort.set()
+
+ def cover_pixmap(self):
+ idx = None
+ for i in self.covers_view.selectionModel().selectedIndexes():
+ if i.isValid():
+ idx = i
+ break
+ if idx is None:
+ idx = self.covers_view.currentIndex()
+ return self.covers_view.model().cover_pixmap(idx)
+
+# }}}
+
+class LogViewer(QDialog): # {{{
+
+ def __init__(self, log, parent=None):
+ QDialog.__init__(self, parent)
+ self.log = log
+ self.l = l = QVBoxLayout()
+ self.setLayout(l)
+
+ self.tb = QTextBrowser(self)
+ l.addWidget(self.tb)
+
+ self.bb = QDialogButtonBox(QDialogButtonBox.Close)
+ l.addWidget(self.bb)
+ self.copy_button = self.bb.addButton(_('Copy to clipboard'),
+ self.bb.ActionRole)
+ self.copy_button.clicked.connect(self.copy_to_clipboard)
+ self.copy_button.setIcon(QIcon(I('edit-copy.png')))
+ self.bb.rejected.connect(self.reject)
+ self.bb.accepted.connect(self.accept)
+
+ self.setWindowTitle(_('Download log'))
+ self.setWindowIcon(QIcon(I('debug.png')))
+ self.resize(QSize(800, 400))
+
+ self.keep_updating = True
+ self.last_html = None
+ self.finished.connect(self.stop)
+ QTimer.singleShot(100, self.update_log)
+
+ self.show()
+
+ def copy_to_clipboard(self):
+ QApplication.clipboard().setText(''.join(self.log.plain_text))
+
+ def stop(self, *args):
+ self.keep_updating = False
+
+ def update_log(self):
+ if not self.keep_updating:
+ return
+ html = self.log.html
+ if html != self.last_html:
+ self.last_html = html
+ self.tb.setHtml('
'+str(err), show=True)
diff --git a/src/calibre/gui2/library/models.py b/src/calibre/gui2/library/models.py
index c5b13901ae..f7074a6fee 100644
--- a/src/calibre/gui2/library/models.py
+++ b/src/calibre/gui2/library/models.py
@@ -7,7 +7,6 @@ __docformat__ = 'restructuredtext en'
import shutil, functools, re, os, traceback
from contextlib import closing
-from operator import attrgetter
from PyQt4.Qt import QAbstractTableModel, Qt, pyqtSignal, QIcon, QImage, \
QModelIndex, QVariant, QDate, QColor
@@ -18,7 +17,7 @@ from calibre.ebooks.metadata import fmt_sidx, authors_to_string, string_to_autho
from calibre.ptempfile import PersistentTemporaryFile
from calibre.utils.config import tweaks, prefs
from calibre.utils.date import dt_factory, qt_to_dt, isoformat
-from calibre.utils.icu import sort_key, strcmp as icu_strcmp
+from calibre.utils.icu import sort_key
from calibre.ebooks.metadata.meta import set_metadata as _set_metadata
from calibre.utils.search_query_parser import SearchQueryParser
from calibre.library.caches import _match, CONTAINS_MATCH, EQUALS_MATCH, \
@@ -428,7 +427,7 @@ class BooksModel(QAbstractTableModel): # {{{
au = self.db.authors(row)
if not au:
au = _('Unknown')
- au = ', '.join([a.strip() for a in au.split(',')])
+ au = authors_to_string([a.strip().replace('|', ',') for a in au.split(',')])
data[_('Author(s)')] = au
return data
@@ -605,7 +604,10 @@ class BooksModel(QAbstractTableModel): # {{{
def size(r, idx=-1):
size = self.db.data[r][idx]
if size:
- return QVariant('%.1f'%(float(size)/(1024*1024)))
+ ans = '%.1f'%(float(size)/(1024*1024))
+ if size > 0 and ans == '0.0':
+ ans = '<0.1'
+ return QVariant(ans)
return None
def rating_type(r, idx=-1):
@@ -640,18 +642,18 @@ class BooksModel(QAbstractTableModel): # {{{
return self.bool_yes_icon
return self.bool_blank_icon
- def text_type(r, mult=False, idx=-1):
+ def text_type(r, mult=None, idx=-1):
text = self.db.data[r][idx]
- if text and mult:
- return QVariant(', '.join(sorted(text.split('|'),key=sort_key)))
+ if text and mult is not None:
+ if mult:
+ return QVariant(u' & '.join(text.split('|')))
+ return QVariant(u', '.join(sorted(text.split('|'),key=sort_key)))
return QVariant(text)
- def decorated_text_type(r, mult=False, idx=-1):
+ def decorated_text_type(r, idx=-1):
text = self.db.data[r][idx]
if force_to_bool(text) is not None:
return None
- if text and mult:
- return QVariant(', '.join(sorted(text.split('|'),key=sort_key)))
return QVariant(text)
def number_type(r, idx=-1):
@@ -659,7 +661,7 @@ class BooksModel(QAbstractTableModel): # {{{
self.dc = {
'title' : functools.partial(text_type,
- idx=self.db.field_metadata['title']['rec_index'], mult=False),
+ idx=self.db.field_metadata['title']['rec_index'], mult=None),
'authors' : functools.partial(authors,
idx=self.db.field_metadata['authors']['rec_index']),
'size' : functools.partial(size,
@@ -671,14 +673,14 @@ class BooksModel(QAbstractTableModel): # {{{
'rating' : functools.partial(rating_type,
idx=self.db.field_metadata['rating']['rec_index']),
'publisher': functools.partial(text_type,
- idx=self.db.field_metadata['publisher']['rec_index'], mult=False),
+ idx=self.db.field_metadata['publisher']['rec_index'], mult=None),
'tags' : functools.partial(tags,
idx=self.db.field_metadata['tags']['rec_index']),
'series' : functools.partial(series_type,
idx=self.db.field_metadata['series']['rec_index'],
siix=self.db.field_metadata['series_index']['rec_index']),
'ondevice' : functools.partial(text_type,
- idx=self.db.field_metadata['ondevice']['rec_index'], mult=False),
+ idx=self.db.field_metadata['ondevice']['rec_index'], mult=None),
}
self.dc_decorator = {
@@ -692,15 +694,16 @@ class BooksModel(QAbstractTableModel): # {{{
datatype = self.custom_columns[col]['datatype']
if datatype in ('text', 'comments', 'composite', 'enumeration'):
mult=self.custom_columns[col]['is_multiple']
+ if mult is not None:
+ mult = self.custom_columns[col]['display'].get('is_names', False)
self.dc[col] = functools.partial(text_type, idx=idx, mult=mult)
if datatype in ['text', 'composite', 'enumeration'] and not mult:
if self.custom_columns[col]['display'].get('use_decorations', False):
- self.dc[col] = functools.partial(decorated_text_type,
- idx=idx, mult=mult)
+ self.dc[col] = functools.partial(decorated_text_type, idx=idx)
self.dc_decorator[col] = functools.partial(
bool_type_decorator, idx=idx,
bool_cols_are_tristate=
- tweaks['bool_custom_columns_are_tristate'] != 'no')
+ self.db.prefs.get('bools_are_tristate'))
elif datatype in ('int', 'float'):
self.dc[col] = functools.partial(number_type, idx=idx)
elif datatype == 'datetime':
@@ -710,7 +713,7 @@ class BooksModel(QAbstractTableModel): # {{{
self.dc_decorator[col] = functools.partial(
bool_type_decorator, idx=idx,
bool_cols_are_tristate=
- tweaks['bool_custom_columns_are_tristate'] != 'no')
+ self.db.prefs.get('bools_are_tristate'))
elif datatype == 'rating':
self.dc[col] = functools.partial(rating_type, idx=idx)
elif datatype == 'series':
@@ -983,6 +986,21 @@ class OnDeviceSearch(SearchQueryParser): # {{{
# }}}
+class DeviceDBSortKeyGen(object): # {{{
+
+ def __init__(self, attr, keyfunc, db):
+ self.attr = attr
+ self.db = db
+ self.keyfunc = keyfunc
+
+ def __call__(self, x):
+ try:
+ ans = self.keyfunc(getattr(self.db[x], self.attr))
+ except:
+ ans = None
+ return ans
+# }}}
+
class DeviceBooksModel(BooksModel): # {{{
booklist_dirtied = pyqtSignal()
@@ -1088,59 +1106,40 @@ class DeviceBooksModel(BooksModel): # {{{
def sort(self, col, order, reset=True):
descending = order != Qt.AscendingOrder
- def strcmp(attr):
- ag = attrgetter(attr)
- def _strcmp(x, y):
- x = ag(self.db[x])
- y = ag(self.db[y])
- if x == None:
- x = ''
- if y == None:
- y = ''
- return icu_strcmp(x.strip(), y.strip())
- return _strcmp
- def datecmp(x, y):
- x = self.db[x].datetime
- y = self.db[y].datetime
- return cmp(dt_factory(x, assume_utc=True), dt_factory(y,
- assume_utc=True))
- def sizecmp(x, y):
- x, y = int(self.db[x].size), int(self.db[y].size)
- return cmp(x, y)
- def tagscmp(x, y):
- x = ','.join(sorted(getattr(self.db[x], 'device_collections', []),key=sort_key))
- y = ','.join(sorted(getattr(self.db[y], 'device_collections', []),key=sort_key))
- return cmp(x, y)
- def libcmp(x, y):
- x, y = self.db[x].in_library, self.db[y].in_library
- return cmp(x, y)
- def authorcmp(x, y):
- ax = getattr(self.db[x], 'author_sort', None)
- ay = getattr(self.db[y], 'author_sort', None)
- if ax and ay:
- x = ax
- y = ay
- else:
- x, y = authors_to_string(self.db[x].authors), \
- authors_to_string(self.db[y].authors)
- return cmp(x, y)
cname = self.column_map[col]
- fcmp = {
- 'title': strcmp('title_sorter'),
- 'authors' : authorcmp,
- 'size' : sizecmp,
- 'timestamp': datecmp,
- 'collections': tagscmp,
- 'inlibrary': libcmp,
+ def author_key(x):
+ try:
+ ax = self.db[x].author_sort
+ if not ax:
+ raise Exception('')
+ except:
+ try:
+ ax = authors_to_string(self.db[x].authors)
+ except:
+ ax = ''
+ return ax
+
+ keygen = {
+ 'title': ('title_sorter', lambda x: sort_key(x) if x else ''),
+ 'authors' : author_key,
+ 'size' : ('size', int),
+ 'timestamp': ('datetime', functools.partial(dt_factory, assume_utc=True)),
+ 'collections': ('device_collections', lambda x:sorted(x,
+ key=sort_key)),
+ 'inlibrary': ('in_library', lambda x: x),
}[cname]
- self.map.sort(cmp=fcmp, reverse=descending)
+ keygen = keygen if callable(keygen) else DeviceDBSortKeyGen(
+ keygen[0], keygen[1], self.db)
+ self.map.sort(key=keygen, reverse=descending)
if len(self.map) == len(self.db):
self.sorted_map = list(self.map)
else:
self.sorted_map = list(range(len(self.db)))
- self.sorted_map.sort(cmp=fcmp, reverse=descending)
+ self.sorted_map.sort(key=keygen, reverse=descending)
self.sorted_on = (self.column_map[col], order)
self.sort_history.insert(0, self.sorted_on)
+ if hasattr(keygen, 'db'):
+ keygen.db = None
if reset:
self.reset()
diff --git a/src/calibre/gui2/library/views.py b/src/calibre/gui2/library/views.py
index c62936a46f..0cce33da9e 100644
--- a/src/calibre/gui2/library/views.py
+++ b/src/calibre/gui2/library/views.py
@@ -78,6 +78,7 @@ class BooksView(QTableView): # {{{
self.pubdate_delegate = PubDateDelegate(self)
self.tags_delegate = CompleteDelegate(self, ',', 'all_tags')
self.authors_delegate = CompleteDelegate(self, '&', 'all_author_names', True)
+ self.cc_names_delegate = CompleteDelegate(self, '&', 'all_custom', True)
self.series_delegate = TextDelegate(self)
self.publisher_delegate = TextDelegate(self)
self.text_delegate = TextDelegate(self)
@@ -410,6 +411,7 @@ class BooksView(QTableView): # {{{
self.save_state()
self._model.set_database(db)
self.tags_delegate.set_database(db)
+ self.cc_names_delegate.set_database(db)
self.authors_delegate.set_database(db)
self.series_delegate.set_auto_complete_function(db.all_series)
self.publisher_delegate.set_auto_complete_function(db.all_publishers)
@@ -431,12 +433,17 @@ class BooksView(QTableView): # {{{
self.setItemDelegateForColumn(cm.index(colhead), delegate)
elif cc['datatype'] == 'comments':
self.setItemDelegateForColumn(cm.index(colhead), self.cc_comments_delegate)
- elif cc['datatype'] in ('text', 'series'):
+ elif cc['datatype'] == 'text':
if cc['is_multiple']:
- self.setItemDelegateForColumn(cm.index(colhead), self.tags_delegate)
+ if cc['display'].get('is_names', False):
+ self.setItemDelegateForColumn(cm.index(colhead),
+ self.cc_names_delegate)
+ else:
+ self.setItemDelegateForColumn(cm.index(colhead),
+ self.tags_delegate)
else:
self.setItemDelegateForColumn(cm.index(colhead), self.cc_text_delegate)
- elif cc['datatype'] in ('int', 'float'):
+ elif cc['datatype'] in ('series', 'int', 'float'):
self.setItemDelegateForColumn(cm.index(colhead), self.cc_text_delegate)
elif cc['datatype'] == 'bool':
self.setItemDelegateForColumn(cm.index(colhead), self.cc_bool_delegate)
diff --git a/src/calibre/gui2/lrf_renderer/main.py b/src/calibre/gui2/lrf_renderer/main.py
index 2acfd3c9a7..e68e04adcf 100644
--- a/src/calibre/gui2/lrf_renderer/main.py
+++ b/src/calibre/gui2/lrf_renderer/main.py
@@ -35,7 +35,7 @@ class RenderWorker(QThread):
self.stream = None
if self.aborted:
self.lrf = None
- except Exception, err:
+ except Exception as err:
self.lrf, self.stream = None, None
self.exception = err
self.formatted_traceback = traceback.format_exc()
diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py
index 976b679726..c67ec8c2b4 100644
--- a/src/calibre/gui2/main.py
+++ b/src/calibre/gui2/main.py
@@ -399,7 +399,7 @@ def main(args=sys.argv):
if __name__ == '__main__':
try:
sys.exit(main())
- except Exception, err:
+ except Exception as err:
if not iswindows: raise
tb = traceback.format_exc()
from PyQt4.QtGui import QErrorMessage
diff --git a/src/calibre/gui2/metadata/basic_widgets.py b/src/calibre/gui2/metadata/basic_widgets.py
index d5a8de7b67..b2ee79c9c0 100644
--- a/src/calibre/gui2/metadata/basic_widgets.py
+++ b/src/calibre/gui2/metadata/basic_widgets.py
@@ -1,5 +1,7 @@
#!/usr/bin/env python
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
+from __future__ import (unicode_literals, division, absolute_import,
+ print_function)
__license__ = 'GPL v3'
__copyright__ = '2011, Kovid Goyal
")
+ _file + "
"+str(e))
@@ -684,9 +707,6 @@ class Cover(ImageView): # {{{
cdata = im.export('png')
self.current_val = cdata
- def download_cover(self, *args):
- pass # TODO: Implement this
-
def generate_cover(self, *args):
from calibre.ebooks import calibre_cover
from calibre.ebooks.metadata import fmt_sidx
@@ -843,6 +863,7 @@ class TagsEdit(MultiCompleteLineEdit): # {{{
if not val:
val = []
self.setText(', '.join([x.strip() for x in val]))
+ self.setCursorPosition(0)
return property(fget=fget, fset=fset)
def initialize(self, db, id_):
@@ -882,8 +903,11 @@ class TagsEdit(MultiCompleteLineEdit): # {{{
# }}}
-class ISBNEdit(QLineEdit): # {{{
- LABEL = _('IS&BN:')
+class IdentifiersEdit(QLineEdit): # {{{
+ LABEL = _('I&ds:')
+ BASE_TT = _('Edit the identifiers for this book. '
+ 'For example: \n\n%s')%(
+ 'isbn:1565927249, doi:10.1000/182, amazon:1565927249')
def __init__(self, parent):
QLineEdit.__init__(self, parent)
@@ -893,32 +917,45 @@ class ISBNEdit(QLineEdit): # {{{
@dynamic_property
def current_val(self):
def fget(self):
- return self.pat.sub('', unicode(self.text()).strip())
+ raw = unicode(self.text()).strip()
+ parts = [x.strip() for x in raw.split(',')]
+ ans = {}
+ for x in parts:
+ c = x.split(':')
+ if len(c) == 2:
+ ans[c[0]] = c[1]
+ return ans
def fset(self, val):
if not val:
- val = ''
- self.setText(val.strip())
+ val = {}
+ txt = ', '.join(['%s:%s'%(k, v) for k, v in val.iteritems()])
+ self.setText(txt.strip())
+ self.setCursorPosition(0)
return property(fget=fget, fset=fset)
def initialize(self, db, id_):
- self.current_val = db.isbn(id_, index_is_id=True)
+ self.current_val = db.get_identifiers(id_, index_is_id=True)
self.original_val = self.current_val
def commit(self, db, id_):
- db.set_isbn(id_, self.current_val, notify=False, commit=False)
+ if self.original_val != self.current_val:
+ db.set_identifiers(id_, self.current_val, notify=False, commit=False)
return True
def validate(self, *args):
- isbn = self.current_val
- tt = _('This ISBN number is valid')
+ identifiers = self.current_val
+ isbn = identifiers.get('isbn', '')
+ tt = self.BASE_TT
+ extra = ''
if not isbn:
col = 'rgba(0,255,0,0%)'
elif check_isbn(isbn) is not None:
col = 'rgba(0,255,0,20%)'
+ extra = '\n\n'+_('This ISBN number is valid')
else:
col = 'rgba(255,0,0,20%)'
- tt = _('This ISBN number is invalid')
- self.setToolTip(tt)
+ extra = '\n\n' + _('This ISBN number is invalid')
+ self.setToolTip(tt+extra)
self.setStyleSheet('QLineEdit { background-color: %s }'%col)
# }}}
@@ -943,7 +980,7 @@ class PublisherEdit(MultiCompleteComboBox): # {{{
if not val:
val = ''
self.setEditText(val.strip())
- self.setCursorPosition(0)
+ self.lineEdit().setCursorPosition(0)
return property(fget=fget, fset=fset)
@@ -953,13 +990,13 @@ class PublisherEdit(MultiCompleteComboBox): # {{{
all_publishers.sort(key=lambda x : sort_key(x[1]))
self.update_items_cache([x[1] for x in all_publishers])
publisher_id = db.publisher_id(id_, index_is_id=True)
- idx, c = None, 0
- for i in all_publishers:
- id, name = i
- if id == publisher_id:
- idx = c
+ idx = None
+ self.clear()
+ for i, x in enumerate(all_publishers):
+ id_, name = x
+ if id_ == publisher_id:
+ idx = i
self.addItem(name)
- c += 1
self.setEditText('')
if idx is not None:
diff --git a/src/calibre/gui2/metadata/bulk_download.py b/src/calibre/gui2/metadata/bulk_download.py
index 461f56b60c..7a7f49dabf 100644
--- a/src/calibre/gui2/metadata/bulk_download.py
+++ b/src/calibre/gui2/metadata/bulk_download.py
@@ -88,7 +88,7 @@ class DownloadMetadata(Thread):
def run(self):
try:
self._run()
- except Exception, e:
+ except Exception as e:
self.exception = e
self.tb = traceback.format_exc()
diff --git a/src/calibre/gui2/metadata/bulk_download2.py b/src/calibre/gui2/metadata/bulk_download2.py
new file mode 100644
index 0000000000..cc6da1e995
--- /dev/null
+++ b/src/calibre/gui2/metadata/bulk_download2.py
@@ -0,0 +1,11 @@
+#!/usr/bin/env python
+# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
+from __future__ import (unicode_literals, division, absolute_import,
+ print_function)
+
+__license__ = 'GPL v3'
+__copyright__ = '2011, Kovid Goyal
%s' % (t, a)
+ if col == 2:
+ d = format_date(book.pubdate, 'yyyy') if book.pubdate else _('Unknown')
+ p = book.publisher if book.publisher else ''
+ return '%s
%s' % (d, p)
+
+
+ def data(self, index, role):
+ row, col = index.row(), index.column()
+ try:
+ book = self.results[row]
+ except:
+ return NONE
+ if role == Qt.DisplayRole and col not in self.ICON_COLS:
+ res = self.data_as_text(book, col)
+ if res:
+ return QVariant(res)
+ return NONE
+ elif role == Qt.DecorationRole and col in self.ICON_COLS:
+ if col == 3 and getattr(book, 'has_cached_cover_url', False):
+ return self.yes_icon
+ if col == 4 and book.comments:
+ return self.yes_icon
+ elif role == Qt.UserRole:
+ return book
+ elif role == Qt.ToolTipRole and col == 3:
+ return QVariant(
+ _('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.'))
+
+ return NONE
+
+ def sort(self, col, order=Qt.AscendingOrder):
+ key = lambda x: x
+ if col == 0:
+ key = attrgetter('gui_rank')
+ elif col == 1:
+ key = attrgetter('title')
+ elif col == 2:
+ key = attrgetter('pubdate')
+ elif col == 3:
+ key = attrgetter('has_cached_cover_url')
+ elif key == 4:
+ key = lambda x: bool(x.comments)
+
+ self.results.sort(key=key, reverse=order==Qt.AscendingOrder)
+ self.reset()
+
+# }}}
+
+class ResultsView(QTableView): # {{{
+
+ show_details_signal = pyqtSignal(object)
+ book_selected = pyqtSignal(object)
+
+ def __init__(self, parent=None):
+ QTableView.__init__(self, parent)
+ self.rt_delegate = RichTextDelegate(self)
+ self.setSelectionMode(self.SingleSelection)
+ self.setAlternatingRowColors(True)
+ self.setSelectionBehavior(self.SelectRows)
+ self.setIconSize(QSize(24, 24))
+ self.clicked.connect(self.show_details)
+ self.doubleClicked.connect(self.select_index)
+ self.setSortingEnabled(True)
+
+ def show_results(self, results):
+ self._model = ResultsModel(results, self)
+ self.setModel(self._model)
+ for i in self._model.HTML_COLS:
+ self.setItemDelegateForColumn(i, self.rt_delegate)
+ self.resizeRowsToContents()
+ self.resizeColumnsToContents()
+ self.setFocus(Qt.OtherFocusReason)
+
+ def currentChanged(self, current, previous):
+ ret = QTableView.currentChanged(self, current, previous)
+ self.show_details(current)
+ return ret
+
+ def show_details(self, index):
+ book = self.model().data(index, Qt.UserRole)
+ parts = [
+ '%s
'%book.title,
+ '
'%(_('See at'), ', '.join(ids)))
+ if book.tags:
+ parts.append(''+_('Please wait')+
+ '
'+
+ '''
+
+ ''')
+
+ def start(self, title=None, authors=None, identifiers={}):
+ self.log.clear()
+ self.log('Starting download')
+ parts = []
+ if title:
+ parts.append('title:'+title)
+ if authors:
+ parts.append('authors:'+authors_to_string(authors))
+ if identifiers:
+ x = ', '.join('%s:%s'%(k, v) for k, v in identifiers.iteritems())
+ parts.append(x)
+ self.query.setText(_('Query: ')+'; '.join(parts))
+ self.log(unicode(self.query.text()))
+
+ self.worker = IdentifyWorker(self.log, self.abort, title,
+ authors, identifiers)
+
+ self.worker.start()
+
+ QTimer.singleShot(50, self.update)
+
+ def update(self):
+ if self.worker.is_alive():
+ QTimer.singleShot(50, self.update)
+ else:
+ self.process_results()
+
+ def process_results(self):
+ if self.worker.error is not None:
+ error_dialog(self, _('Download failed'),
+ _('Failed to download metadata. Click '
+ 'Show Details to see details'),
+ show=True, det_msg=self.worker.error)
+ self.rejected.emit()
+ return
+
+ if not self.worker.results:
+ log = ''.join(self.log.plain_text)
+ error_dialog(self, _('No matches found'), '
.%s
'%html)
+ QTimer.singleShot(1000, self.update_log)
+
+# }}}
+
+class FullFetch(QDialog): # {{{
+
+ def __init__(self, current_cover=None, parent=None):
+ QDialog.__init__(self, parent)
+ self.current_cover = current_cover
+ self.log = Log()
+ self.book = self.cover_pixmap = None
+
+ self.setWindowTitle(_('Downloading metadata...'))
+ self.setWindowIcon(QIcon(I('metadata.png')))
+
+ self.stack = QStackedWidget()
+ self.l = l = QVBoxLayout()
+ self.setLayout(l)
+ l.addWidget(self.stack)
+
+ self.bb = QDialogButtonBox(QDialogButtonBox.Cancel|QDialogButtonBox.Ok)
+ l.addWidget(self.bb)
+ self.bb.rejected.connect(self.reject)
+ self.next_button = self.bb.addButton(_('Next'), self.bb.AcceptRole)
+ self.next_button.setDefault(True)
+ self.next_button.setEnabled(False)
+ self.next_button.setIcon(QIcon(I('ok.png')))
+ self.next_button.clicked.connect(self.next_clicked)
+ self.ok_button = self.bb.button(self.bb.Ok)
+ self.ok_button.clicked.connect(self.ok_clicked)
+ self.log_button = self.bb.addButton(_('View log'), self.bb.ActionRole)
+ self.log_button.clicked.connect(self.view_log)
+ self.log_button.setIcon(QIcon(I('debug.png')))
+ self.ok_button.setVisible(False)
+
+ self.identify_widget = IdentifyWidget(self.log, self)
+ self.identify_widget.rejected.connect(self.reject)
+ self.identify_widget.results_found.connect(self.identify_results_found)
+ self.identify_widget.book_selected.connect(self.book_selected)
+ self.stack.addWidget(self.identify_widget)
+
+ self.covers_widget = CoversWidget(self.log, self.current_cover, parent=self)
+ self.covers_widget.chosen.connect(self.ok_clicked)
+ self.stack.addWidget(self.covers_widget)
+
+ self.resize(850, 550)
+
+ self.finished.connect(self.cleanup)
+
+ def view_log(self):
+ self._lv = LogViewer(self.log, self)
+
+ def book_selected(self, book):
+ self.next_button.setVisible(False)
+ self.ok_button.setVisible(True)
+ self.book = book
+ self.stack.setCurrentIndex(1)
+ self.log('\n\n')
+ self.covers_widget.start(book, self.current_cover,
+ self.title, self.authors)
+
+ def accept(self):
+ # Prevent the usual dialog accept mechanisms from working
+ pass
+
+ def reject(self):
+ self.identify_widget.cancel()
+ self.covers_widget.cancel()
+ return QDialog.reject(self)
+
+ def cleanup(self):
+ self.covers_widget.cleanup()
+
+ def identify_results_found(self):
+ self.next_button.setEnabled(True)
+
+ def next_clicked(self, *args):
+ self.identify_widget.get_result()
+
+ def ok_clicked(self, *args):
+ self.cover_pixmap = self.covers_widget.cover_pixmap()
+ if DEBUG_DIALOG:
+ if self.cover_pixmap is not None:
+ self.w = QLabel()
+ self.w.setPixmap(self.cover_pixmap)
+ self.stack.addWidget(self.w)
+ self.stack.setCurrentIndex(2)
+ else:
+ QDialog.accept(self)
+
+ def start(self, title=None, authors=None, identifiers={}):
+ self.title, self.authors = title, authors
+ self.identify_widget.start(title=title, authors=authors,
+ identifiers=identifiers)
+ return self.exec_()
+# }}}
+
+class CoverFetch(QDialog): # {{{
+
+ def __init__(self, current_cover=None, parent=None):
+ QDialog.__init__(self, parent)
+ self.current_cover = current_cover
+ self.log = Log()
+ self.cover_pixmap = None
+
+ self.setWindowTitle(_('Downloading cover...'))
+ self.setWindowIcon(QIcon(I('book.png')))
+
+ self.l = l = QVBoxLayout()
+ self.setLayout(l)
+
+ self.covers_widget = CoversWidget(self.log, self.current_cover, parent=self)
+ self.covers_widget.chosen.connect(self.accept)
+ l.addWidget(self.covers_widget)
+
+ self.resize(850, 550)
+
+ self.finished.connect(self.cleanup)
+
+ self.bb = QDialogButtonBox(QDialogButtonBox.Cancel|QDialogButtonBox.Ok)
+ l.addWidget(self.bb)
+ self.log_button = self.bb.addButton(_('View log'), self.bb.ActionRole)
+ self.log_button.clicked.connect(self.view_log)
+ self.log_button.setIcon(QIcon(I('debug.png')))
+ self.bb.rejected.connect(self.reject)
+ self.bb.accepted.connect(self.accept)
+
+ def cleanup(self):
+ self.covers_widget.cleanup()
+
+ def reject(self):
+ self.covers_widget.cancel()
+ return QDialog.reject(self)
+
+ def accept(self, *args):
+ self.cover_pixmap = self.covers_widget.cover_pixmap()
+ QDialog.accept(self)
+
+ def start(self, title, authors, identifiers):
+ book = Metadata(title, authors)
+ book.identifiers = identifiers
+ self.covers_widget.start(book, self.current_cover,
+ title, authors)
+ return self.exec_()
+
+ def view_log(self):
+ self._lv = LogViewer(self.log, self)
+
+# }}}
+
+if __name__ == '__main__':
+ #DEBUG_DIALOG = True
+ app = QApplication([])
+ d = FullFetch()
+ d.start(title='great gatsby', authors=['fitzgerald'])
+
diff --git a/src/calibre/gui2/notify.py b/src/calibre/gui2/notify.py
index 501f7007eb..947d98f1a4 100644
--- a/src/calibre/gui2/notify.py
+++ b/src/calibre/gui2/notify.py
@@ -34,7 +34,7 @@ class DBUSNotifier(Notifier):
import dbus
self.dbus = dbus
self._notify = dbus.Interface(dbus.SessionBus().get_object(server, path), interface)
- except Exception, err:
+ except Exception as err:
self.ok = False
self.err = str(err)
diff --git a/src/calibre/gui2/preferences/__init__.py b/src/calibre/gui2/preferences/__init__.py
index 54eb2f713c..1669e24059 100644
--- a/src/calibre/gui2/preferences/__init__.py
+++ b/src/calibre/gui2/preferences/__init__.py
@@ -7,8 +7,9 @@ __docformat__ = 'restructuredtext en'
import textwrap
-from PyQt4.Qt import QWidget, pyqtSignal, QCheckBox, QAbstractSpinBox, \
- QLineEdit, QComboBox, QVariant, Qt
+from PyQt4.Qt import (QWidget, pyqtSignal, QCheckBox, QAbstractSpinBox,
+ QLineEdit, QComboBox, QVariant, Qt, QIcon, QDialog, QVBoxLayout,
+ QDialogButtonBox)
from calibre.customize.ui import preferences_plugins
from calibre.utils.config import ConfigProxy
@@ -21,7 +22,7 @@ class ConfigWidgetInterface(object):
'''
This class defines the interface that all widgets displayed in the
Preferences dialog must implement. See :class:`ConfigWidgetBase` for
- a base class that implements this interface and defines various conveninece
+ a base class that implements this interface and defines various convenience
methods as well.
'''
@@ -284,7 +285,14 @@ def get_plugin(category, name):
'No Preferences Plugin with category: %s and name: %s found' %
(category, name))
-# Testing {{{
+class ConfigDialog(QDialog):
+ def set_widget(self, w): self.w = w
+ def accept(self):
+ try:
+ self.restart_required = self.w.commit()
+ except AbortCommit:
+ return
+ QDialog.accept(self)
def init_gui():
from calibre.gui2.ui import Main
@@ -298,21 +306,24 @@ def init_gui():
gui.initialize(db.library_path, db, None, actions, show_gui=False)
return gui
-def test_widget(category, name, gui=None):
- from PyQt4.Qt import QDialog, QVBoxLayout, QDialogButtonBox
- class Dialog(QDialog):
- def set_widget(self, w): self.w = w
- def accept(self):
- try:
- self.restart_required = self.w.commit()
- except AbortCommit:
- return
- QDialog.accept(self)
+def show_config_widget(category, name, gui=None, show_restart_msg=False,
+ parent=None, never_shutdown=False):
+ '''
+ Show the preferences plugin identified by category and name
+ :param gui: gui instance, if None a hidden gui is created
+ :param show_restart_msg: If True and the preferences plugin indicates a
+ restart is required, show a message box telling the user to restart
+ :param parent: The parent of the displayed dialog
+
+ :return: True iff a restart is required for the changes made by the user to
+ take effect
+ '''
pl = get_plugin(category, name)
- d = Dialog()
+ d = ConfigDialog(parent)
d.resize(750, 550)
- d.setWindowTitle(category + " - " + name)
+ d.setWindowTitle(_('Configure ') + name)
+ d.setWindowIcon(QIcon(I('config.png')))
bb = QDialogButtonBox(d)
bb.setStandardButtons(bb.Apply|bb.Cancel|bb.RestoreDefaults)
bb.accepted.connect(d.accept)
@@ -335,11 +346,18 @@ def test_widget(category, name, gui=None):
w.genesis(gui)
w.initialize()
d.exec_()
- if getattr(d, 'restart_required', False):
+ rr = getattr(d, 'restart_required', False)
+ if show_restart_msg and rr:
from calibre.gui2 import warning_dialog
warning_dialog(gui, 'Restart required', 'Restart required', show=True)
- if mygui:
+ if mygui and not never_shutdown:
gui.shutdown()
+ return rr
+
+# Testing {{{
+
+def test_widget(category, name, gui=None):
+ show_config_widget(category, name, gui=gui, show_restart_msg=True)
def test_all():
from PyQt4.Qt import QApplication
diff --git a/src/calibre/gui2/preferences/behavior.py b/src/calibre/gui2/preferences/behavior.py
index 45a63ce529..b376d067bc 100644
--- a/src/calibre/gui2/preferences/behavior.py
+++ b/src/calibre/gui2/preferences/behavior.py
@@ -11,7 +11,7 @@ from PyQt4.Qt import Qt, QVariant, QListWidgetItem
from calibre.gui2.preferences import ConfigWidgetBase, test_widget, Setting
from calibre.gui2.preferences.behavior_ui import Ui_Form
-from calibre.gui2 import config, info_dialog, dynamic
+from calibre.gui2 import config, info_dialog, dynamic, gprefs
from calibre.utils.config import prefs
from calibre.customize.ui import available_output_formats, all_input_formats
from calibre.utils.search_query_parser import saved_searches
@@ -19,6 +19,7 @@ from calibre.ebooks import BOOK_EXTENSIONS
from calibre.ebooks.oeb.iterator import is_supported
from calibre.constants import iswindows
from calibre.utils.icu import sort_key
+from calibre.utils.config import test_eight_code
class OutputFormatSetting(Setting):
@@ -31,15 +32,20 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
db = gui.library_view.model().db
r = self.register
-
- r('worker_process_priority', prefs, choices=
- [(_('Low'), 'low'), (_('Normal'), 'normal'), (_('High'), 'high')])
+ choices = [(_('Low'), 'low'), (_('Normal'), 'normal'), (_('High'),
+ 'high')] if iswindows else \
+ [(_('Normal'), 'normal'), (_('Low'), 'low'), (_('Very low'),
+ 'high')]
+ r('worker_process_priority', prefs, choices=choices)
r('network_timeout', prefs)
r('overwrite_author_title_metadata', config)
r('get_social_metadata', config)
+ if test_eight_code:
+ self.opt_overwrite_author_title_metadata.setVisible(False)
+ self.opt_get_social_metadata.setVisible(False)
r('new_version_notification', config)
r('upload_news_to_device', config)
r('delete_news_from_library_on_upload', config)
@@ -60,9 +66,14 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
signal = getattr(self.opt_internally_viewed_formats, 'item'+signal)
signal.connect(self.internally_viewed_formats_changed)
- self.settings['worker_process_priority'].gui_obj.setVisible(iswindows)
- self.priority_label.setVisible(iswindows)
-
+ r('bools_are_tristate', db.prefs, restart_required=True)
+ if test_eight_code:
+ r = self.register
+ choices = [(_('Default'), 'default'), (_('Compact Metadata'), 'alt1')]
+ r('edit_metadata_single_layout', gprefs, choices=choices)
+ else:
+ self.opt_edit_metadata_single_layout.setVisible(False)
+ self.edit_metadata_single_label.setVisible(False)
def initialize(self):
ConfigWidgetBase.initialize(self)
diff --git a/src/calibre/gui2/preferences/behavior.ui b/src/calibre/gui2/preferences/behavior.ui
index 0f35d28cd5..544de1457a 100644
--- a/src/calibre/gui2/preferences/behavior.ui
+++ b/src/calibre/gui2/preferences/behavior.ui
@@ -14,44 +14,92 @@
'+_('If checked, downloaded news will be automatically '
'mailed
to this email address '
- '(provided it is in one of the listed formats).')])
+ '(provided it is in one of the listed formats).')])))
def rowCount(self, *args):
return len(self.account_order)
def columnCount(self, *args):
- return 3
+ return len(self.headers)
def headerData(self, section, orientation, role):
if role == Qt.DisplayRole and orientation == Qt.Horizontal:
@@ -56,14 +63,16 @@ class EmailAccounts(QAbstractTableModel): # {{{
return QVariant(account)
if col == 1:
return QVariant(self.accounts[account][0])
+ if col == 2:
+ return QVariant(self.subjects.get(account, ''))
if role == Qt.FontRole and self.accounts[account][2]:
return self.default_font
- if role == Qt.CheckStateRole and col == 2:
+ if role == Qt.CheckStateRole and col == 3:
return QVariant(Qt.Checked if self.accounts[account][1] else Qt.Unchecked)
return NONE
def flags(self, index):
- if index.column() == 2:
+ if index.column() == 3:
return QAbstractTableModel.flags(self, index)|Qt.ItemIsUserCheckable
else:
return QAbstractTableModel.flags(self, index)|Qt.ItemIsEditable
@@ -73,11 +82,13 @@ class EmailAccounts(QAbstractTableModel): # {{{
return False
row, col = index.row(), index.column()
account = self.account_order[row]
- if col == 2:
+ if col == 3:
self.accounts[account][1] ^= True
+ elif col == 2:
+ self.subjects[account] = unicode(value.toString())
elif col == 1:
self.accounts[account][0] = unicode(value.toString()).upper()
- else:
+ elif col == 0:
na = unicode(value.toString())
from email.utils import parseaddr
addr = parseaddr(na)[-1]
@@ -89,7 +100,7 @@ class EmailAccounts(QAbstractTableModel): # {{{
self.accounts[na][0] = 'AZW, MOBI, TPZ, PRC, AZW1'
self.dataChanged.emit(
- self.index(index.row(), 0), self.index(index.row(), 2))
+ self.index(index.row(), 0), self.index(index.row(), 3))
return True
def make_default(self, index):
@@ -143,7 +154,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
self.send_email_widget.initialize(self.preferred_to_address)
self.send_email_widget.changed_signal.connect(self.changed_signal.emit)
opts = self.send_email_widget.smtp_opts
- self._email_accounts = EmailAccounts(opts.accounts)
+ self._email_accounts = EmailAccounts(opts.accounts, opts.subjects)
self._email_accounts.dataChanged.connect(lambda x,y:
self.changed_signal.emit())
self.email_view.setModel(self._email_accounts)
@@ -170,6 +181,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
if not self.send_email_widget.set_email_settings(to_set):
raise AbortCommit('abort')
self.proxy['accounts'] = self._email_accounts.accounts
+ self.proxy['subjects'] = self._email_accounts.subjects
return ConfigWidgetBase.commit(self)
diff --git a/src/calibre/gui2/preferences/look_feel.py b/src/calibre/gui2/preferences/look_feel.py
index 206f2b97fb..71b9e38667 100644
--- a/src/calibre/gui2/preferences/look_feel.py
+++ b/src/calibre/gui2/preferences/look_feel.py
@@ -48,10 +48,9 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
r('disable_tray_notification', config)
r('use_roman_numerals_for_series_number', config)
r('separate_cover_flow', config, restart_required=True)
- r('show_child_bar', gprefs)
- choices = [(_('Small'), 'small'), (_('Medium'), 'medium'),
- (_('Large'), 'large')]
+ choices = [(_('Off'), 'off'), (_('Small'), 'small'),
+ (_('Medium'), 'medium'), (_('Large'), 'large')]
r('toolbar_icon_size', gprefs, choices=choices)
choices = [(_('Automatic'), 'auto'), (_('Always'), 'always'),
@@ -64,8 +63,9 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
r('tags_browser_collapse_at', gprefs)
choices = set([k for k in db.field_metadata.all_field_keys()
- if db.field_metadata[k]['is_category'] and
- db.field_metadata[k]['datatype'] in ['text', 'series', 'enumeration']])
+ if db.field_metadata[k]['is_category'] and
+ (db.field_metadata[k]['datatype'] in ['text', 'series', 'enumeration']) and
+ not db.field_metadata[k]['display'].get('is_names', False)])
choices -= set(['authors', 'publisher', 'formats', 'news', 'identifiers'])
choices |= set(['search'])
self.opt_categories_using_hierarchy.update_items_cache(choices)
diff --git a/src/calibre/gui2/preferences/look_feel.ui b/src/calibre/gui2/preferences/look_feel.ui
index bc965b89fa..996caeb653 100644
--- a/src/calibre/gui2/preferences/look_feel.ui
+++ b/src/calibre/gui2/preferences/look_feel.ui
@@ -6,8 +6,8 @@
'+_('The template %s is invalid:')%s + \
' '+_('The template %s is invalid:')%tmpl + \
' '+_('Changing the authors for several books can '
'take a while. Are you sure?')
- +'
'+str(err), show=True)
diff --git a/src/calibre/gui2/preferences/plugins.py b/src/calibre/gui2/preferences/plugins.py
index cc7821d1fe..79cd2b1ce4 100644
--- a/src/calibre/gui2/preferences/plugins.py
+++ b/src/calibre/gui2/preferences/plugins.py
@@ -6,6 +6,7 @@ __copyright__ = '2010, Kovid Goyal
'+str(err), show=True)
diff --git a/src/calibre/gui2/preferences/server.py b/src/calibre/gui2/preferences/server.py
index 82519f17cd..f4a00c0932 100644
--- a/src/calibre/gui2/preferences/server.py
+++ b/src/calibre/gui2/preferences/server.py
@@ -18,6 +18,7 @@ from calibre.utils.config import ConfigProxy
from calibre.gui2 import error_dialog, config, open_url, warning_dialog, \
Dispatcher, info_dialog
from calibre import as_unicode
+from calibre.utils.icu import sort_key
class ConfigWidget(ConfigWidgetBase, Ui_Form):
@@ -42,8 +43,11 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
else self.opt_password.Password))
self.opt_password.setEchoMode(self.opt_password.Password)
- restrictions = sorted(saved_searches().names(),
- cmp=lambda x,y: cmp(x.lower(), y.lower()))
+ restrictions = sorted(saved_searches().names(), key=sort_key)
+ # verify that the current restriction still exists. If not, clear it.
+ csr = db.prefs.get('cs_restriction', None)
+ if csr and csr not in restrictions:
+ db.prefs.set('cs_restriction', '')
choices = [('', '')] + [(x, x) for x in restrictions]
r('cs_restriction', db.prefs, choices=choices)
@@ -57,17 +61,8 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
r('autolaunch_server', config)
- def set_server_options(self):
- c = self.proxy
- c.set('port', self.opt_port.value())
- c.set('username', unicode(self.opt_username.text()).strip())
- p = unicode(self.opt_password.text()).strip()
- if not p:
- p = None
- c.set('password', p)
-
def start_server(self):
- self.set_server_options()
+ ConfigWidgetBase.commit(self)
self.gui.start_content_server(check_started=False)
while not self.gui.content_server.is_running and self.gui.content_server.exception is None:
time.sleep(1)
diff --git a/src/calibre/gui2/preferences/toolbar.py b/src/calibre/gui2/preferences/toolbar.py
index a0d48f3910..7f5e0c4441 100644
--- a/src/calibre/gui2/preferences/toolbar.py
+++ b/src/calibre/gui2/preferences/toolbar.py
@@ -34,9 +34,12 @@ class BaseModel(QAbstractListModel):
if name == 'Location Manager':
return FakeAction(name, None,
_('Switch between library and device views'),
- dont_remove_from=set(['toolbar-device']))
+ dont_add_to=frozenset(['menubar', 'toolbar',
+ 'toolbar-child', 'context-menu',
+ 'context-menu-device']))
if name is None:
- return FakeAction('--- '+_('Separator')+' ---', None)
+ return FakeAction('--- '+_('Separator')+' ---', None,
+ dont_add_to=frozenset(['menubar', 'menubar-device']))
try:
return gui.iactions[name]
except:
@@ -77,6 +80,12 @@ class BaseModel(QAbstractListModel):
ans.append(n)
return ans
+ def has_action(self, name):
+ for a in self._data:
+ if a.name == name:
+ return True
+ return False
+
class AllModel(BaseModel):
@@ -89,7 +98,7 @@ class AllModel(BaseModel):
self._data = self.get_all_actions(current)
def get_all_actions(self, current):
- all = list(self.gui.iactions.keys()) + ['Donate']
+ all = list(self.gui.iactions.keys()) + ['Donate', 'Location Manager']
all = [x for x in all if x not in current] + [None]
all = [self.name_to_action(x, self.gui) for x in all]
all = [x for x in all if self.key not in x.dont_add_to]
@@ -209,10 +218,13 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
LOCATIONS = [
('toolbar', _('The main toolbar')),
('toolbar-device', _('The main toolbar when a device is connected')),
+ ('toolbar-child', _('The optional second toolbar')),
+ ('menubar', _('The menubar')),
+ ('menubar-device', _('The menubar when a device is connected')),
('context-menu', _('The context menu for the books in the '
'calibre library')),
('context-menu-device', _('The context menu for the books on '
- 'the device'))
+ 'the device')),
]
def genesis(self, gui):
@@ -283,6 +295,18 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
self.changed_signal.emit()
def commit(self):
+ # Ensure preferences are showing in either the toolbar or
+ # the menubar.
+ pref_in_toolbar = self.models['toolbar'][1].has_action('Preferences')
+ pref_in_menubar = self.models['menubar'][1].has_action('Preferences')
+ lm_in_toolbar = self.models['toolbar-device'][1].has_action('Location Manager')
+ lm_in_menubar = self.models['menubar-device'][1].has_action('Location Manager')
+ if not pref_in_toolbar and not pref_in_menubar:
+ self.models['menubar'][1].add(['Preferences'])
+ if not lm_in_toolbar and not lm_in_menubar:
+ self.models['menubar-device'][1].add(['Location Manager'])
+
+ # Save data.
for am, cm in self.models.values():
cm.commit()
return False
diff --git a/src/calibre/gui2/preferences/tweaks.py b/src/calibre/gui2/preferences/tweaks.py
index 9d0097ac35..a1756bf1ba 100644
--- a/src/calibre/gui2/preferences/tweaks.py
+++ b/src/calibre/gui2/preferences/tweaks.py
@@ -14,9 +14,9 @@ from calibre.utils.config import read_raw_tweaks, write_tweaks
from calibre.gui2.widgets import PythonHighlighter
from calibre import isbytestring
-from PyQt4.Qt import QAbstractListModel, Qt, QStyledItemDelegate, QStyle, \
- QStyleOptionViewItem, QFont, QDialogButtonBox, QDialog, \
- QVBoxLayout, QPlainTextEdit, QLabel
+from PyQt4.Qt import (QAbstractListModel, Qt, QStyledItemDelegate, QStyle,
+ QStyleOptionViewItem, QFont, QDialogButtonBox, QDialog,
+ QVBoxLayout, QPlainTextEdit, QLabel)
class Delegate(QStyledItemDelegate): # {{{
def __init__(self, view):
@@ -35,8 +35,9 @@ class Delegate(QStyledItemDelegate): # {{{
class Tweak(object): # {{{
def __init__(self, name, doc, var_names, defaults, custom):
- self.name = name
- self.doc = doc.strip()
+ translate = __builtins__['_']
+ self.name = translate(name)
+ self.doc = translate(doc.strip())
self.var_names = var_names
self.default_values = {}
for x in var_names:
diff --git a/src/calibre/gui2/search_box.py b/src/calibre/gui2/search_box.py
index fa3b597636..ea7cab95d0 100644
--- a/src/calibre/gui2/search_box.py
+++ b/src/calibre/gui2/search_box.py
@@ -109,7 +109,7 @@ class SearchBox2(QComboBox): # {{{
def normalize_state(self):
self.setToolTip(self.tool_tip_text)
self.line_edit.setStyleSheet(
- 'QLineEdit{color:black;background-color:%s;}' % self.normal_background)
+ 'QLineEdit{color:none;background-color:%s;}' % self.normal_background)
def text(self):
return self.currentText()
@@ -436,14 +436,15 @@ class SavedSearchBoxMixin(object): # {{{
b = getattr(self, x+'_search_button')
b.setStatusTip(b.toolTip())
- def saved_searches_changed(self, set_restriction=None):
+ def saved_searches_changed(self, set_restriction=None, recount=True):
p = sorted(saved_searches().names(), key=sort_key)
if set_restriction is None:
set_restriction = unicode(self.search_restriction.currentText())
# rebuild the restrictions combobox using current saved searches
self.search_restriction.clear()
self.search_restriction.addItem('')
- self.tags_view.recount()
+ if recount:
+ self.tags_view.recount()
for s in p:
self.search_restriction.addItem(s)
if set_restriction: # redo the search restriction if there was one
diff --git a/src/calibre/gui2/search_restriction_mixin.py b/src/calibre/gui2/search_restriction_mixin.py
index 73c191101c..74e448da6e 100644
--- a/src/calibre/gui2/search_restriction_mixin.py
+++ b/src/calibre/gui2/search_restriction_mixin.py
@@ -25,8 +25,9 @@ class SearchRestrictionMixin(object):
r = self.search_restriction.findText(name)
if r < 0:
r = 0
- self.search_restriction.setCurrentIndex(r)
- self.apply_search_restriction(r)
+ if r != self.search_restriction.currentIndex():
+ self.search_restriction.setCurrentIndex(r)
+ self.apply_search_restriction(r)
def apply_search_restriction(self, i):
r = unicode(self.search_restriction.currentText())
diff --git a/src/calibre/gui2/tag_view.py b/src/calibre/gui2/tag_view.py
index dd8c81d819..83695b86c1 100644
--- a/src/calibre/gui2/tag_view.py
+++ b/src/calibre/gui2/tag_view.py
@@ -16,7 +16,7 @@ from PyQt4.Qt import Qt, QTreeView, QApplication, pyqtSignal, QFont, QSize, \
QIcon, QPoint, QVBoxLayout, QHBoxLayout, QComboBox, QTimer,\
QAbstractItemModel, QVariant, QModelIndex, QMenu, QFrame,\
QPushButton, QWidget, QItemDelegate, QString, QLabel, \
- QShortcut, QKeySequence, SIGNAL, QMimeData
+ QShortcut, QKeySequence, SIGNAL, QMimeData, QToolButton
from calibre.ebooks.metadata import title_sort
from calibre.gui2 import config, NONE, gprefs
@@ -158,11 +158,17 @@ class TagsView(QTreeView): # {{{
self.setContextMenuPolicy(Qt.CustomContextMenu)
pop = config['sort_tags_by']
self.sort_by.setCurrentIndex(self.db.CATEGORY_SORTS.index(pop))
+ try:
+ match_pop = self.db.MATCH_TYPE.index(config['match_tags_type'])
+ except ValueError:
+ match_pop = 0
+ self.tag_match.setCurrentIndex(match_pop)
if not self.made_connections:
self.clicked.connect(self.toggle)
self.customContextMenuRequested.connect(self.show_context_menu)
self.refresh_required.connect(self.recount, type=Qt.QueuedConnection)
self.sort_by.currentIndexChanged.connect(self.sort_changed)
+ self.tag_match.currentIndexChanged.connect(self.match_changed)
self.made_connections = True
self.refresh_signal_processed = True
db.add_listener(self.database_changed)
@@ -180,6 +186,12 @@ class TagsView(QTreeView): # {{{
config.set('sort_tags_by', self.db.CATEGORY_SORTS[pop])
self.recount()
+ def match_changed(self, pop):
+ try:
+ config.set('match_tags_type', self.db.MATCH_TYPE[pop])
+ except:
+ pass
+
def set_search_restriction(self, s):
if s:
self.search_restriction = s
@@ -658,8 +670,7 @@ class TagTreeItem(object): # {{{
def tag_data(self, role):
tag = self.tag
- if tag.category == 'authors' and \
- tweaks['categories_use_field_for_author_name'] == 'author_sort':
+ if tag.use_sort_as_name:
name = tag.sort
tt_author = True
else:
@@ -707,8 +718,8 @@ class TagTreeItem(object): # {{{
break
elif self.tag.state == TAG_SEARCH_STATES['mark_plusplus'] or\
self.tag.state == TAG_SEARCH_STATES['mark_minusminus']:
- if self.tag.is_searchable and self.tag.is_hierarchical \
- and len(self.children):
+ if self.tag.is_searchable and len(self.children) and \
+ self.tag.is_hierarchical == '5state':
break
else:
break
@@ -803,7 +814,8 @@ class TagsModel(QAbstractItemModel): # {{{
self.category_nodes.append(node)
node.can_be_edited = (not is_gst) and (i == (len(path_parts)-1))
node.is_gst = is_gst
- node.tag.is_hierarchical = not is_gst
+ if not is_gst:
+ node.tag.is_hierarchical = '5state'
if not is_gst:
tree_root[p] = {}
tree_root = tree_root[p]
@@ -973,6 +985,7 @@ class TagsModel(QAbstractItemModel): # {{{
def do_drop_from_library(self, md, action, row, column, parent):
idx = parent
if idx.isValid():
+ self.tags_view.setCurrentIndex(idx)
node = self.data(idx, Qt.UserRole)
if node.type == TagTreeItem.TAG:
fm = self.db.metadata_for_field(node.tag.category)
@@ -1050,12 +1063,12 @@ class TagsModel(QAbstractItemModel): # {{{
if (key == 'authors' and len(ids) >= 5):
if not confirm('
'+_('Changing the metadata for that many books ' 'can take a while. Are you sure?') - +'
', 'tag_browser_many_changes', self.parent()): + +'', 'tag_browser_many_changes', self.tags_view): return fm = self.db.metadata_for_field(key) @@ -1274,6 +1287,7 @@ class TagsModel(QAbstractItemModel): # {{{ if len(components) == 0 or '.'.join(components) != tag.original_name: components = [tag.original_name] if (not tag.is_hierarchical) and (in_uc or + (fm['is_custom'] and fm['display'].get('is_names', False)) or key in ['authors', 'publisher', 'news', 'formats', 'rating'] or key not in self.db.prefs.get('categories_using_hierarchy', []) or len(components) == 1): @@ -1294,7 +1308,8 @@ class TagsModel(QAbstractItemModel): # {{{ if t.type != TagTreeItem.CATEGORY]) if (comp,tag.category) in child_map: node_parent = child_map[(comp,tag.category)] - node_parent.tag.is_hierarchical = key != 'search' + node_parent.tag.is_hierarchical = \ + '5state' if tag.category != 'search' else '3state' else: if i < len(components)-1: t = copy.copy(tag) @@ -1309,7 +1324,8 @@ class TagsModel(QAbstractItemModel): # {{{ t = tag if not in_uc: t.original_name = t.name - t.is_hierarchical = key != 'search' + t.is_hierarchical = \ + '5state' if t.category != 'search' else '3state' t.name = comp self.beginInsertRows(category_index, 999999, 1) node_parent = TagTreeItem(parent=node_parent, data=t, @@ -1502,7 +1518,7 @@ class TagsModel(QAbstractItemModel): # {{{ if node.tag.category in \ ('tags', 'series', 'authors', 'rating', 'publisher') or \ (fm['is_custom'] and \ - fm['datatype'] in ['text', 'rating', 'series']): + fm['datatype'] in ['text', 'rating', 'series', 'enumeration']): ans |= Qt.ItemIsDropEnabled else: ans |= Qt.ItemIsDropEnabled @@ -2058,17 +2074,18 @@ class TagBrowserWidget(QWidget): # {{{ sc = QShortcut(QKeySequence(_('ALT+f')), parent) sc.connect(sc, SIGNAL('activated()'), self.set_focus_to_find_box) - self.search_button = QPushButton() + self.search_button = QToolButton() self.search_button.setText(_('F&ind')) self.search_button.setToolTip(_('Find the first/next matching item')) - self.search_button.setFixedWidth(40) search_layout.addWidget(self.search_button) - self.expand_button = QPushButton() + self.expand_button = QToolButton() self.expand_button.setText('-') - self.expand_button.setFixedWidth(20) self.expand_button.setToolTip(_('Collapse all categories')) search_layout.addWidget(self.expand_button) + search_layout.setStretch(0, 10) + search_layout.setStretch(1, 1) + search_layout.setStretch(2, 1) self.current_find_position = None self.search_button.clicked.connect(self.find) @@ -2110,6 +2127,7 @@ class TagBrowserWidget(QWidget): # {{{ parent.sort_by.setCurrentIndex(0) self._layout.addWidget(parent.sort_by) + # Must be in the same order as db2.MATCH_TYPE parent.tag_match = QComboBox(parent) for x in (_('Match any'), _('Match all')): parent.tag_match.addItem(x) diff --git a/src/calibre/gui2/threaded_jobs.py b/src/calibre/gui2/threaded_jobs.py new file mode 100644 index 0000000000..f29baf4134 --- /dev/null +++ b/src/calibre/gui2/threaded_jobs.py @@ -0,0 +1,238 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai +from __future__ import (unicode_literals, division, absolute_import, + print_function) + +__license__ = 'GPL v3' +__copyright__ = '2011, Kovid GoyalCalibre %s
- %s - - - '''%(P('content_server/calibre_banner.png').replace(os.sep, '/'), MSG, BUTTON) - pt = PersistentTemporaryFile('_donate.htm') - pt.write(HTML.encode('utf-8')) - pt.close() - open_local_file(pt.name) - + open_url(QUrl('http://calibre-ebook.com/donate')) def confirm_quit(self): if self.job_manager.has_jobs(): @@ -670,6 +644,7 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ self.update_checker.terminate() self.listener.close() self.job_manager.server.close() + self.job_manager.threaded_server.close() while self.spare_servers: self.spare_servers.pop().close() self.device_manager.keep_going = False @@ -678,8 +653,6 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ mb.stop() self.hide_windows() - if self.emailer.is_alive(): - self.emailer.stop() try: try: if self.content_server is not None: diff --git a/src/calibre/gui2/viewer/dictionary.py b/src/calibre/gui2/viewer/dictionary.py index dad8d1821c..d5dd4d0a86 100644 --- a/src/calibre/gui2/viewer/dictionary.py +++ b/src/calibre/gui2/viewer/dictionary.py @@ -36,7 +36,7 @@ class Lookup(QThread): def run(self): try: self.define() - except Exception, e: + except Exception as e: import traceback self.exception = e self.traceback = traceback.format_exc() diff --git a/src/calibre/gui2/viewer/documentview.py b/src/calibre/gui2/viewer/documentview.py index 4102aea412..06964cda1c 100644 --- a/src/calibre/gui2/viewer/documentview.py +++ b/src/calibre/gui2/viewer/documentview.py @@ -171,10 +171,11 @@ class Document(QWebPage): # {{{ self.misc_config() self.after_load() - def __init__(self, shortcuts, parent=None): + def __init__(self, shortcuts, parent=None, resize_callback=lambda: None): QWebPage.__init__(self, parent) self.setObjectName("py_bridge") self.debug_javascript = False + self.resize_callback = resize_callback self.current_language = None self.loaded_javascript = False @@ -237,6 +238,12 @@ class Document(QWebPage): # {{{ if self.loaded_javascript: return self.loaded_javascript = True + self.javascript( + ''' + window.onresize = function(event) { + window.py_bridge.window_resized(); + } + ''') if jquery is None: jquery = P('content_server/jquery.js', data=True) self.javascript(jquery) @@ -298,6 +305,10 @@ class Document(QWebPage): # {{{ def debug(self, msg): prints(msg) + @pyqtSignature('') + def window_resized(self): + self.resize_callback() + def reference_mode(self, enable): self.javascript(('enter' if enable else 'leave')+'_reference_mode()') @@ -424,12 +435,19 @@ class Document(QWebPage): # {{{ def xpos(self): return self.mainFrame().scrollPosition().x() - @property + @dynamic_property def scroll_fraction(self): - try: - return float(self.ypos)/(self.height-self.window_height) - except ZeroDivisionError: - return 0. + def fget(self): + try: + return float(self.ypos)/(self.height-self.window_height) + except ZeroDivisionError: + return 0. + def fset(self, val): + npos = val * (self.height - self.window_height) + if npos < 0: + npos = 0 + self.scroll_to(x=self.xpos, y=npos) + return property(fget=fget, fset=fset) @property def hscroll_fraction(self): @@ -493,7 +511,8 @@ class DocumentView(QWebView): # {{{ self._size_hint = QSize(510, 680) self.initial_pos = 0.0 self.to_bottom = False - self.document = Document(self.shortcuts, parent=self) + self.document = Document(self.shortcuts, parent=self, + resize_callback=self.viewport_resized) self.setPage(self.document) self.manager = None self._reference_mode = False @@ -630,9 +649,13 @@ class DocumentView(QWebView): # {{{ def sizeHint(self): return self._size_hint - @property + @dynamic_property def scroll_fraction(self): - return self.document.scroll_fraction + def fget(self): + return self.document.scroll_fraction + def fset(self, val): + self.document.scroll_fraction = float(val) + return property(fget=fget, fset=fset) @property def hscroll_fraction(self): @@ -968,9 +991,11 @@ class DocumentView(QWebView): # {{{ def resizeEvent(self, event): ret = QWebView.resizeEvent(self, event) QTimer.singleShot(10, self.initialize_scrollbar) + return ret + + def viewport_resized(self): if self.manager is not None: self.manager.viewport_resized(self.scroll_fraction) - return ret def event(self, ev): typ = ev.type() diff --git a/src/calibre/gui2/viewer/main.py b/src/calibre/gui2/viewer/main.py index c704b98dc9..303d73dc11 100644 --- a/src/calibre/gui2/viewer/main.py +++ b/src/calibre/gui2/viewer/main.py @@ -240,7 +240,7 @@ class EbookViewer(MainWindow, Ui_EbookViewer): self.connect(self.action_reference_mode, SIGNAL('triggered(bool)'), lambda x: self.view.reference_mode(x)) self.connect(self.action_metadata, SIGNAL('triggered(bool)'), lambda x:self.metadata.setVisible(x)) - self.connect(self.action_table_of_contents, SIGNAL('toggled(bool)'), lambda x:self.toc.setVisible(x)) + self.action_table_of_contents.toggled[bool].connect(self.set_toc_visible) self.connect(self.action_copy, SIGNAL('triggered(bool)'), self.copy) self.connect(self.action_font_size_larger, SIGNAL('triggered(bool)'), self.font_size_larger) @@ -310,6 +310,9 @@ class EbookViewer(MainWindow, Ui_EbookViewer): self.restore_state() + def set_toc_visible(self, yes): + self.toc.setVisible(yes) + def clear_recent_history(self, *args): vprefs.set('viewer_open_history', []) self.build_recent_menu() diff --git a/src/calibre/gui2/widgets.py b/src/calibre/gui2/widgets.py index 8ebf9c2c21..ea0d2570e5 100644 --- a/src/calibre/gui2/widgets.py +++ b/src/calibre/gui2/widgets.py @@ -97,7 +97,7 @@ class FilenamePattern(QWidget, Ui_Form): def do_test(self): try: pat = self.pattern() - except Exception, err: + except Exception as err: error_dialog(self, _('Invalid regular expression'), _('Invalid regular expression: %s')%err).exec_() return @@ -121,6 +121,12 @@ class FilenamePattern(QWidget, Ui_Form): else: self.series_index.setText(_('No match')) + if mi.publisher: + self.publisher.setText(mi.publisher) + + if mi.pubdate: + self.pubdate.setText(mi.pubdate.strftime('%Y-%m-%d')) + self.isbn.setText(_('No match') if mi.isbn is None else str(mi.isbn)) @@ -306,6 +312,7 @@ class ImageView(QWidget, ImageDropMixin): p.setPen(pen) if self.draw_border: p.drawRect(target) + #p.drawRect(self.rect()) p.end() class CoverView(QGraphicsView, ImageDropMixin): @@ -317,7 +324,7 @@ class CoverView(QGraphicsView, ImageDropMixin): ImageDropMixin.__init__(self) def get_pixmap(self): - for item in self.scene().items(): + for item in self.scene.items(): if hasattr(item, 'pixmap'): return item.pixmap() @@ -342,6 +349,7 @@ class FontFamilyModel(QAbstractListModel): self.families = list(qt_families.intersection(set(self.families))) self.families.sort() self.families[:0] = [_('None')] + self.font = QFont('sansserif') def rowCount(self, *args): return len(self.families) @@ -354,10 +362,11 @@ class FontFamilyModel(QAbstractListModel): return NONE if role == Qt.DisplayRole: return QVariant(family) - if False and role == Qt.FontRole: - # Causes a Qt crash with some fonts - # so disabled. - return QVariant(QFont(family)) + if role == Qt.FontRole: + # If a user chooses some non standard font as the interface font, + # rendering some font names causes Qt to crash, so return what is + # hopefully a "safe" font + return QVariant(self.font) return NONE def index_of(self, family): diff --git a/src/calibre/gui2/wizard/__init__.py b/src/calibre/gui2/wizard/__init__.py index c629b10b5d..a32347dc72 100644 --- a/src/calibre/gui2/wizard/__init__.py +++ b/src/calibre/gui2/wizard/__init__.py @@ -565,7 +565,7 @@ def move_library(oldloc, newloc, parent, callback_on_complete): # Try to load existing library at new location try: LibraryDatabase2(newloc) - except Exception, err: + except Exception as err: det = traceback.format_exc() error_dialog(parent, _('Invalid database'), _('An invalid library already exists at ' @@ -577,7 +577,7 @@ def move_library(oldloc, newloc, parent, callback_on_complete): else: callback(newloc) return - except Exception, err: + except Exception as err: det = traceback.format_exc() error_dialog(parent, _('Could not move library'), unicode(err), det, show=True) diff --git a/src/calibre/library/caches.py b/src/calibre/library/caches.py index 19ef7e213c..a108feb388 100644 --- a/src/calibre/library/caches.py +++ b/src/calibre/library/caches.py @@ -15,7 +15,7 @@ from calibre.utils.config import tweaks, prefs from calibre.utils.date import parse_date, now, UNDEFINED_DATE from calibre.utils.search_query_parser import SearchQueryParser from calibre.utils.pyparsing import ParseException -from calibre.ebooks.metadata import title_sort +from calibre.ebooks.metadata import title_sort, author_to_author_sort from calibre.ebooks.metadata.opf2 import metadata_to_opf from calibre import prints @@ -191,7 +191,8 @@ class CacheRow(list): # {{{ if is_comp: id = list.__getitem__(self, 0) self._must_do = False - mi = self.db.get_metadata(id, index_is_id=True) + mi = self.db.get_metadata(id, index_is_id=True, + get_user_categories=False) for c in self._composites: self[c] = mi.get(self._composites[c]) return list.__getitem__(self, col) @@ -547,7 +548,7 @@ class ResultCache(SearchQueryParser): # {{{ return matchkind, query def get_bool_matches(self, location, query, candidates): - bools_are_tristate = tweaks['bool_custom_columns_are_tristate'] != 'no' + bools_are_tristate = not self.db_prefs.get('bools_are_tristate') loc = self.field_metadata[location]['rec_index'] matches = set() query = icu_lower(query) @@ -947,7 +948,7 @@ class ResultCache(SearchQueryParser): # {{{ if not fields: fields = [('timestamp', False)] - keyg = SortKeyGenerator(fields, self.field_metadata, self._data) + keyg = SortKeyGenerator(fields, self.field_metadata, self._data, self.db_prefs) self._map.sort(key=keyg) tmap = list(itertools.repeat(False, len(self._data))) @@ -970,9 +971,10 @@ class SortKey(object): class SortKeyGenerator(object): - def __init__(self, fields, field_metadata, data): + def __init__(self, fields, field_metadata, data, db_prefs): from calibre.utils.icu import sort_key self.field_metadata = field_metadata + self.db_prefs = db_prefs self.orders = [1 if x[1] else -1 for x in fields] self.entries = [(x[0], field_metadata[x[0]]) for x in fields] self.library_order = tweaks['title_series_sorting'] == 'library_order' @@ -1023,12 +1025,16 @@ class SortKeyGenerator(object): if val: sep = fm['is_multiple'] if sep: - val = sep.join(sorted(val.split(sep), + if fm['display'].get('is_names', False): + val = sep.join( + [author_to_author_sort(v) for v in val.split(sep)]) + else: + val = sep.join(sorted(val.split(sep), key=self.string_sort_key)) val = self.string_sort_key(val) elif dt == 'bool': - if tweaks['bool_custom_columns_are_tristate'] == 'no': + if not self.db_prefs.get('bools_are_tristate'): val = {True: 1, False: 2, None: 2}.get(val, 2) else: val = {True: 1, False: 2, None: 3}.get(val, 3) diff --git a/src/calibre/library/custom_columns.py b/src/calibre/library/custom_columns.py index dec55f2b02..8eed121b21 100644 --- a/src/calibre/library/custom_columns.py +++ b/src/calibre/library/custom_columns.py @@ -76,6 +76,8 @@ class CustomColumns(object): 'num':record[6], 'is_multiple':record[7], } + if data['display'] is None: + data['display'] = {} table, lt = self.custom_table_names(data['num']) if table not in custom_tables or (data['normalized'] and lt not in custom_tables): @@ -117,7 +119,7 @@ class CustomColumns(object): if x is None: return [] if isinstance(x, (str, unicode, bytes)): - x = x.split(',') + x = x.split('&' if d['display'].get('is_names', False) else',') x = [y.strip() for y in x if y.strip()] x = [y.decode(preferred_encoding, 'replace') if not isinstance(y, unicode) else y for y in x] @@ -482,8 +484,11 @@ class CustomColumns(object): set_val = val if data['is_multiple'] else [val] existing = getter() if not existing: - existing = [] - for x in set(set_val) - set(existing): + existing = set([]) + else: + existing = set(existing) + # preserve the order in set_val + for x in [v for v in set_val if v not in existing]: # normalized types are text and ratings, so we can do this check # to see if we need to re-add the value if not x: diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py index 50a0ba98dd..0b1182c0bf 100644 --- a/src/calibre/library/database2.py +++ b/src/calibre/library/database2.py @@ -41,24 +41,24 @@ from calibre.utils.magick.draw import save_cover_data_to from calibre.utils.recycle_bin import delete_file, delete_tree from calibre.utils.formatter_functions import load_user_template_functions - copyfile = os.link if hasattr(os, 'link') else shutil.copyfile class Tag(object): def __init__(self, name, id=None, count=0, state=0, avg=0, sort=None, tooltip=None, icon=None, category=None, id_set=None, - is_editable = True, is_searchable=True): + is_editable = True, is_searchable=True, use_sort_as_name=False): self.name = self.original_name = name self.id = id self.count = count self.state = state - self.is_hierarchical = False + self.is_hierarchical = '' self.is_editable = is_editable self.is_searchable = is_searchable self.id_set = id_set if id_set is not None else set([]) self.avg_rating = avg/2.0 if avg is not None else 0 self.sort = sort + self.use_sort_as_name = use_sort_as_name if self.avg_rating > 0: if tooltip: tooltip = tooltip + ': ' @@ -213,6 +213,12 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): defs['gui_restriction'] = defs['cs_restriction'] = '' defs['categories_using_hierarchy'] = [] + # Migrate the bool tristate tweak + defs['bools_are_tristate'] = \ + tweaks.get('bool_custom_columns_are_tristate', 'yes') == 'yes' + if self.prefs.get('bools_are_tristate') is None: + self.prefs.set('bools_are_tristate', defs['bools_are_tristate']) + # Migrate saved search and user categories to db preference scheme def migrate_preference(key, default): oldval = prefs[key] @@ -817,7 +823,8 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): pass return (path, mi, sequence) - def get_metadata(self, idx, index_is_id=False, get_cover=False): + def get_metadata(self, idx, index_is_id=False, get_cover=False, + get_user_categories=True): ''' Convenience method to return metadata as a :class:`Metadata` object. Note that the list of formats is not verified. @@ -876,16 +883,17 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): user_cats = self.prefs['user_categories'] user_cat_vals = {} - for ucat in user_cats: - res = [] - for name,cat,ign in user_cats[ucat]: - v = mi.get(cat, None) - if isinstance(v, list): - if name in v: + if get_user_categories: + for ucat in user_cats: + res = [] + for name,cat,ign in user_cats[ucat]: + v = mi.get(cat, None) + if isinstance(v, list): + if name in v: + res.append([name,cat]) + elif name == v: res.append([name,cat]) - elif name == v: - res.append([name,cat]) - user_cat_vals[ucat] = res + user_cat_vals[ucat] = res mi.user_categories = user_cat_vals if get_cover: @@ -1120,8 +1128,10 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): pdir = os.path.dirname(dest) if not os.path.exists(pdir): os.makedirs(pdir) - with lopen(dest, 'wb') as f: - shutil.copyfileobj(stream, f) + if not getattr(stream, 'name', False) or \ + os.path.abspath(dest) != os.path.abspath(stream.name): + with lopen(dest, 'wb') as f: + shutil.copyfileobj(stream, f) stream.seek(0, 2) size=stream.tell() self.conn.execute('INSERT INTO data (book,format,uncompressed_size,name) VALUES (?,?,?,?)', @@ -1225,6 +1235,7 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): ########## data structures for get_categories CATEGORY_SORTS = ('name', 'popularity', 'rating') + MATCH_TYPE = ('any', 'all') class TCat_Tag(object): @@ -1323,6 +1334,11 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): for l in list: (id, val) = (l[0], l[1]) tids[category][val] = (id, '{0:05.2f}'.format(val)) + elif cat['datatype'] == 'text' and cat['is_multiple'] and \ + cat['display'].get('is_names', False): + for l in list: + (id, val) = (l[0], l[1]) + tids[category][val] = (id, author_to_author_sort(val)) else: for l in list: (id, val) = (l[0], l[1]) @@ -1480,11 +1496,20 @@ class LibraryDatabase2(LibraryDatabase, SchemaUpgrade, CustomColumns): reverse=True items.sort(key=kf, reverse=reverse) + if tweaks['categories_use_field_for_author_name'] == 'author_sort' and\ + (category == 'authors' or + (cat['display'].get('is_names', False) and + cat['is_custom'] and cat['is_multiple'] and + cat['datatype'] == 'text')): + use_sort_as_name = True + else: + use_sort_as_name = False is_editable = category not in ['news', 'rating'] categories[category] = [tag_class(formatter(r.n), count=r.c, id=r.id, avg=avgr(r), sort=r.s, icon=icon, tooltip=tooltip, category=category, - id_set=r.id_set, is_editable=is_editable) + id_set=r.id_set, is_editable=is_editable, + use_sort_as_name=use_sort_as_name) for r in items] #print 'end phase "tags list":', time.clock() - last, 'seconds' diff --git a/src/calibre/library/field_metadata.py b/src/calibre/library/field_metadata.py index b8180f9f39..ae91283523 100644 --- a/src/calibre/library/field_metadata.py +++ b/src/calibre/library/field_metadata.py @@ -4,8 +4,8 @@ Created on 25 May 2010 @author: charles ''' import copy, traceback +from collections import OrderedDict -from calibre.utils.ordered_dict import OrderedDict from calibre.utils.config import tweaks class TagsIcons(dict): diff --git a/src/calibre/library/server/__init__.py b/src/calibre/library/server/__init__.py index 244669f50a..950c881d8d 100644 --- a/src/calibre/library/server/__init__.py +++ b/src/calibre/library/server/__init__.py @@ -10,7 +10,7 @@ import os from calibre.utils.config import Config, StringConfig, config_dir, tweaks -listen_on = '0.0.0.0' +listen_on = tweaks['server_listen_on'] log_access_file = os.path.join(config_dir, 'server_access_log.txt') diff --git a/src/calibre/library/server/base.py b/src/calibre/library/server/base.py index 83d395dec5..eea28469a9 100644 --- a/src/calibre/library/server/base.py +++ b/src/calibre/library/server/base.py @@ -24,6 +24,8 @@ from calibre.library.server.xml import XMLServer from calibre.library.server.opds import OPDSServer from calibre.library.server.cache import Cache from calibre.library.server.browse import BrowseServer +from calibre.utils.search_query_parser import saved_searches +from calibre import prints class DispatchController(object): # {{{ @@ -178,7 +180,12 @@ class LibraryServer(ContentServer, MobileServer, XMLServer, OPDSServer, Cache, def set_search_restriction(self, restriction): self.search_restriction_name = restriction if restriction: - self.search_restriction = 'search:"%s"'%restriction + if restriction not in saved_searches().names(): + prints('WARNING: Content server: search restriction ', + restriction, ' does not exist') + self.search_restriction = '' + else: + self.search_restriction = 'search:"%s"'%restriction else: self.search_restriction = '' self.reset_caches() @@ -222,7 +229,7 @@ class LibraryServer(ContentServer, MobileServer, XMLServer, OPDSServer, Cache, # cherrypy.engine.signal_handler.subscribe() cherrypy.engine.block() - except Exception, e: + except Exception as e: self.exception = e finally: self.is_running = False diff --git a/src/calibre/library/server/browse.py b/src/calibre/library/server/browse.py index f1d9b9785c..139e2b3ef9 100644 --- a/src/calibre/library/server/browse.py +++ b/src/calibre/library/server/browse.py @@ -7,15 +7,15 @@ __docformat__ = 'restructuredtext en' import operator, os, json, re from binascii import hexlify, unhexlify +from collections import OrderedDict import cherrypy from calibre.constants import filesystem_encoding from calibre import isbytestring, force_unicode, fit_image, \ prepare_string_for_xml -from calibre.utils.ordered_dict import OrderedDict from calibre.utils.filenames import ascii_filename -from calibre.utils.config import prefs, tweaks +from calibre.utils.config import prefs from calibre.utils.icu import sort_key from calibre.utils.magick import Image from calibre.library.comments import comments_to_html @@ -155,8 +155,7 @@ def get_category_items(category, items, restriction, datatype, prefix): # {{{ '
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "" @@ -854,30 +879,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "" @@ -885,28 +910,28 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1109,12 +1134,12 @@ msgid "" "Create a tag called \"Im_Reading\" " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1205,32 +1230,32 @@ msgstr "" msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1239,29 +1264,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1394,7 +1430,7 @@ msgstr "" msgid "Communicate with an eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "" @@ -1525,62 +1561,62 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "" @@ -1741,25 +1777,33 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1768,57 +1812,57 @@ msgid "" "Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
Cannot upload books to device there is no more free space available " msgstr "" @@ -7191,68 +7251,80 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7265,7 +7337,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "" @@ -7401,7 +7473,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -7416,7 +7488,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -7448,13 +7520,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "" @@ -7481,12 +7553,12 @@ msgid "Author sort" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "" @@ -7670,22 +7742,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "" @@ -7772,50 +7844,50 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8319,7 +8391,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8334,7 +8406,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -8561,7 +8633,7 @@ 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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "" @@ -8604,36 +8676,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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:88 +#: /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:89 +#: /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:90 +#: /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:91 +#: /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:93 +#: /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:94 +#: /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:96 +#: /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 "" @@ -9007,34 +9093,38 @@ msgstr "" msgid "Publishers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /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:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9147,12 +9237,12 @@ 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:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 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:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9221,7 +9311,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "" @@ -9456,61 +9546,61 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -9524,67 +9614,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -10619,55 +10749,63 @@ msgid "" " " 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: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:201 +#: /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:202 +#: /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:203 +#: /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:204 +#: /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:205 +#: /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:206 #: /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:207 +#: /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:208 +#: /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:209 +#: /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:210 +#: /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:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223 msgid "The empty string is always the first value" msgstr "" @@ -10706,25 +10844,32 @@ msgstr "" msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24 +#: /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:24 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29 +#: /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:30 +#: /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 mailedClick Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 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:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -12134,52 +12284,45 @@ msgstr "" msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12379,7 +12522,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12457,36 +12600,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12554,77 +12697,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12699,27 +12846,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12854,65 +13001,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13022,54 +13182,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13872,33 +14032,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "جهاز أبل" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "التواصل عن طريق iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "تم الكشف عن جهاز ابل, يتم تشغيل iTunes, الرجاء الانتظار..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "%d من %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "تم" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "الأخبار" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "الفهرس" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "تواصل معا iTunes" @@ -929,30 +954,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "يجري إحصاء قائمة كتب من الجهاز..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "يجري تحويل الكتب إلى الجهاز..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "إضافة كتب لقائمة البيانات الوصفية للجهاز ..." @@ -960,28 +985,28 @@ msgstr "إضافة كتب لقائمة البيانات الوصفية للجه #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "يجري حذف الكتب من الجهاز..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "يجري إرسال دليل المعلومات. إلى الجهاز..." -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1184,12 +1209,12 @@ msgid "" "Create a tag called \"Im_Reading\" " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "غير مطبق" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1280,15 +1305,15 @@ msgstr "التواصل مع قارئ الكتاب الاليكتروني سون msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " @@ -1296,18 +1321,18 @@ msgstr "" "ضع علامة الفاصلة للفصل بين مجموعة من البيانات الوصفية لكي تكون مجموعة في " "الجهاز . و تشمل الاحتمالات التالية: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1316,29 +1341,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1471,7 +1507,7 @@ msgstr "" msgid "Communicate with an eBook reader." msgstr "الاتصال مع جهاز قارئ إلكتروني ." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "يجري إحصاء معلومات الجهاز..." @@ -1610,62 +1646,62 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "خيارات الدخل" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "خيارات للتحكم في معالجة الملف المدخل %s ." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "خيارات الخرج" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "خيارات للتحكم في معالجة الملف المُخرج %s ." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "خيارات للتحكم في الشكل و المظهر للمُخرجات ." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "تحكّم بالكشف الآلي لبناء المستند" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "خيارات لوضع البيانات الوصفية في المُخرجات ." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "خيارات للمساعدة في تصحيح التحويل ." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "قائمة من الوصفات المدمجة" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "المخرجات حُفِظت في" @@ -1832,25 +1868,33 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1859,34 +1903,34 @@ msgid "" "Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
Cannot upload books to device there is no more free space available " msgstr "" @@ -7288,68 +7348,80 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7362,7 +7434,7 @@ msgstr "إختيار التهيئة" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "التهيئة" @@ -7498,7 +7570,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -7513,7 +7585,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -7545,13 +7617,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "تاريخ" @@ -7578,12 +7650,12 @@ msgid "Author sort" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "" @@ -7767,22 +7839,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "" @@ -7869,50 +7941,50 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8416,7 +8488,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8431,7 +8503,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -8658,7 +8730,7 @@ 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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "إظهار& كلمة السرّ" @@ -8701,36 +8773,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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:88 +#: /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:89 +#: /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:90 +#: /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:91 +#: /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:93 +#: /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:94 +#: /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:96 +#: /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 "" @@ -9104,34 +9190,38 @@ msgstr "المؤلفون" msgid "Publishers" msgstr "الناشرون" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /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:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9248,12 +9338,12 @@ 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:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 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:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9322,7 +9412,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "&تجربة" @@ -9557,61 +9647,61 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -9625,67 +9715,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -10716,55 +10846,63 @@ msgid "" " " 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: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:201 +#: /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:202 +#: /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:203 +#: /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:204 +#: /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:205 +#: /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:206 #: /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:207 +#: /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:208 +#: /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:209 +#: /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:210 +#: /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:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223 msgid "The empty string is always the first value" msgstr "" @@ -10803,25 +10941,32 @@ msgstr "" msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24 +#: /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:24 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29 +#: /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:30 +#: /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 mailedClick Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 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:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -12231,52 +12381,45 @@ msgstr "" msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr "خطأ في التحويل"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12456,7 +12599,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12514,36 +12657,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12611,77 +12754,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr "كتب إلكترونية"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12756,27 +12903,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12911,65 +13058,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13079,54 +13239,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13932,33 +14092,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "" @@ -854,30 +879,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "" @@ -885,28 +910,28 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1109,12 +1134,12 @@ msgid "" "Create a tag called \"Im_Reading\" " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1205,32 +1230,32 @@ msgstr "" msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1239,29 +1264,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1394,7 +1430,7 @@ msgstr "" msgid "Communicate with an eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "" @@ -1525,62 +1561,62 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "" @@ -1741,25 +1777,33 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1768,57 +1812,57 @@ msgid "" "Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
Cannot upload books to device there is no more free space available " msgstr "" @@ -7191,68 +7251,80 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7265,7 +7337,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "" @@ -7401,7 +7473,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -7416,7 +7488,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -7448,13 +7520,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "" @@ -7481,12 +7553,12 @@ msgid "Author sort" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "" @@ -7670,22 +7742,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "" @@ -7772,50 +7844,50 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8319,7 +8391,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8334,7 +8406,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -8561,7 +8633,7 @@ 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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "" @@ -8604,36 +8676,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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:88 +#: /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:89 +#: /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:90 +#: /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:91 +#: /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:93 +#: /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:94 +#: /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:96 +#: /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 "" @@ -9007,34 +9093,38 @@ msgstr "" msgid "Publishers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /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:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9147,12 +9237,12 @@ 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:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 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:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9221,7 +9311,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "" @@ -9456,61 +9546,61 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -9524,67 +9614,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -10619,55 +10749,63 @@ msgid "" " " 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: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:201 +#: /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:202 +#: /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:203 +#: /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:204 +#: /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:205 +#: /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:206 #: /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:207 +#: /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:208 +#: /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:209 +#: /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:210 +#: /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:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223 msgid "The empty string is always the first value" msgstr "" @@ -10706,25 +10844,32 @@ msgstr "" msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24 +#: /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:24 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29 +#: /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:30 +#: /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 mailedClick Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 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:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -12134,52 +12284,45 @@ msgstr "" msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12379,7 +12522,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12457,36 +12600,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12554,77 +12697,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12699,27 +12846,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12854,65 +13001,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13022,54 +13182,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13872,33 +14032,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "Кеширай обложки от iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "Разреши кеширане и показване на обложки от iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" -msgstr "" +msgstr "Apple устройство" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." -msgstr "" +msgstr "Комуникирай с iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" +"Apple устройство разпознато, стартиране на iTunes, моля изчакайте ..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "%d от %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "завършено" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "Новини" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "Каталог" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "" @@ -839,11 +869,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:25 msgid "Li Fanxi" -msgstr "" +msgstr "Li Fanxi" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:42 msgid "Device IP Address (restart calibre after changing)" -msgstr "" +msgstr "IP адрес на устройството (рестартирайте Калибър след промяна)" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:47 msgid "" @@ -872,30 +902,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "" @@ -903,28 +933,28 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1127,12 +1157,12 @@ msgid "" "Create a tag called \"Im_Reading\" " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "Не е изпълнено" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1223,32 +1253,32 @@ msgstr "" msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1257,29 +1287,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1412,7 +1453,7 @@ msgstr "Допълнително персонализиране" msgid "Communicate with an eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "" @@ -1484,6 +1525,8 @@ msgid "" "Don't sort the files found in the comic alphabetically by name. Instead use " "the order they were added to the comic." msgstr "" +"Не сортирайте файловете в комикса по азбучен ред на имената. Вместо това " +"използвайте реда, по който са били добавени в комикса." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:303 msgid "" @@ -1543,62 +1586,62 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "ВХОДЯЩИ ОПЦИИ" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "ИЗХОДЯЩИ ОПЦИИ" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "" @@ -1759,25 +1802,33 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1786,57 +1837,57 @@ msgid "" "Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
Cannot upload books to device there is no more free space available " msgstr "" @@ -7209,68 +7276,80 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "Име" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7283,7 +7362,7 @@ msgstr "Избор на формат" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "Формат" @@ -7419,7 +7498,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -7434,7 +7513,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -7466,13 +7545,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "Дата" @@ -7499,12 +7578,12 @@ msgid "Author sort" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "" @@ -7688,22 +7767,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "" @@ -7790,50 +7869,50 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8339,7 +8418,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8354,7 +8433,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -8582,7 +8661,7 @@ 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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "" @@ -8625,36 +8704,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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:88 +#: /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:89 +#: /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:90 +#: /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:91 +#: /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:93 +#: /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:94 +#: /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:96 +#: /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 "" @@ -9028,34 +9121,38 @@ msgstr "Автори" msgid "Publishers" msgstr "Издатели" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /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:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9168,12 +9265,12 @@ 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:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 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:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9242,7 +9339,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "Про&ба" @@ -9477,61 +9574,61 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "Новини:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "от" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "в %s формат." -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "Изпращане на имейл на" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -9545,67 +9642,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -10640,55 +10777,63 @@ msgid "" " " 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: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:201 +#: /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:202 +#: /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:203 +#: /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:204 +#: /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:205 +#: /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:206 #: /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:207 +#: /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:208 +#: /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:209 +#: /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:210 +#: /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:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223 msgid "The empty string is always the first value" msgstr "" @@ -10727,25 +10872,32 @@ msgstr "" msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24 +#: /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:24 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29 +#: /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:30 +#: /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 mailedClick Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 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:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -12159,52 +12316,45 @@ msgstr "" msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12404,7 +12554,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12482,36 +12632,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12579,77 +12729,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12724,27 +12878,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12879,65 +13033,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13047,54 +13214,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13897,33 +14064,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "" @@ -849,30 +874,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "" @@ -880,28 +905,28 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1104,12 +1129,12 @@ msgid "" "Create a tag called \"Im_Reading\" " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1200,32 +1225,32 @@ msgstr "" msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1234,29 +1259,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1389,7 +1425,7 @@ msgstr "" msgid "Communicate with an eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "" @@ -1520,62 +1556,62 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "" @@ -1736,25 +1772,33 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1763,57 +1807,57 @@ msgid "" "Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
Cannot upload books to device there is no more free space available " msgstr "" @@ -7186,68 +7246,80 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7260,7 +7332,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "" @@ -7396,7 +7468,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -7411,7 +7483,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -7443,13 +7515,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "" @@ -7476,12 +7548,12 @@ msgid "Author sort" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "" @@ -7665,22 +7737,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "" @@ -7767,50 +7839,50 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8314,7 +8386,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8329,7 +8401,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -8556,7 +8628,7 @@ 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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "" @@ -8599,36 +8671,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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:88 +#: /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:89 +#: /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:90 +#: /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:91 +#: /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:93 +#: /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:94 +#: /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:96 +#: /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 "" @@ -9002,34 +9088,38 @@ msgstr "" msgid "Publishers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /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:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9142,12 +9232,12 @@ 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:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 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:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9216,7 +9306,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "" @@ -9451,61 +9541,61 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -9519,67 +9609,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -10614,55 +10744,63 @@ msgid "" " " 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: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:201 +#: /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:202 +#: /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:203 +#: /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:204 +#: /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:205 +#: /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:206 #: /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:207 +#: /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:208 +#: /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:209 +#: /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:210 +#: /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:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223 msgid "The empty string is always the first value" msgstr "" @@ -10701,25 +10839,32 @@ msgstr "" msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24 +#: /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:24 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29 +#: /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:30 +#: /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 mailedClick Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 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:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -12129,52 +12279,45 @@ msgstr "" msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12374,7 +12517,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12452,36 +12595,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12549,77 +12692,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12694,27 +12841,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12849,65 +12996,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13017,54 +13177,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13867,33 +14027,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "Apple uređah" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "završeno" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "Vijesti" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "Katalog" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "" @@ -849,30 +874,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "" @@ -880,28 +905,28 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "Uklanjam knjige sa uređaja..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1104,12 +1129,12 @@ msgid "" "Create a tag called \"Im_Reading\" " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1200,32 +1225,32 @@ msgstr "" msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1234,29 +1259,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1389,7 +1425,7 @@ msgstr "" msgid "Communicate with an eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "" @@ -1520,62 +1556,62 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "" @@ -1736,25 +1772,33 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1763,57 +1807,57 @@ msgid "" "Note that only some output formats support justification." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
Cannot upload books to device there is no more free space available " msgstr "" @@ -7186,68 +7246,80 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7260,7 +7332,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "" @@ -7396,7 +7468,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -7411,7 +7483,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -7443,13 +7515,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "" @@ -7476,12 +7548,12 @@ msgid "Author sort" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "" @@ -7665,22 +7737,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "" @@ -7767,50 +7839,50 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8314,7 +8386,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8329,7 +8401,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -8556,7 +8628,7 @@ 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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "" @@ -8599,36 +8671,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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:88 +#: /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:89 +#: /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:90 +#: /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:91 +#: /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:93 +#: /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:94 +#: /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:96 +#: /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 "" @@ -9002,34 +9088,38 @@ msgstr "" msgid "Publishers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /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:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9142,12 +9232,12 @@ 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:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 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:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -9216,7 +9306,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "" @@ -9451,61 +9541,61 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -9519,67 +9609,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -10614,55 +10744,63 @@ msgid "" " " 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: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:201 +#: /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:202 +#: /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:203 +#: /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:204 +#: /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:205 +#: /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:206 #: /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:207 +#: /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:208 +#: /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:209 +#: /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:210 +#: /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:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:223 msgid "The empty string is always the first value" msgstr "" @@ -10701,25 +10839,32 @@ msgstr "" msgid "&Remove email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24 +#: /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:24 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 msgid "Email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29 +#: /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:30 +#: /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 mailedClick Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 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:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -12129,52 +12279,45 @@ msgstr "" msgid "Calibre Quick Start Guide" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12374,7 +12517,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12452,36 +12595,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12549,77 +12692,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12694,27 +12841,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12849,65 +12996,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13017,54 +13177,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13867,33 +14027,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" +"Si no voleu que el calibre reconegui el vostre dispositiu Apple quan es " +"connecti a l'ordinador feu clic a «Inhabilita el controlador " +"Apple».
Per transferir llibres al dispositiu Apple feu clic a " +"«Inhabilita el controlador Apple» i utilitzeu el mètode «Connecta a " +"iTunes» que es recomana a Calibre + " +"iDevices FAQ, utilitzant l'element del menú " +"Connecta/comparteix|Connecta a iTunes.
Habilitar el " +"controlador Apple per a una connexió directa als dispositius Apple és un " +"mode d'usuari avançat per al qual no hi ha suport.
" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "Inhabilita el controlador Apple" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "Habilita el controlador Apple" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Fes servir la sèrie com a categoria a l'iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" +"Habilita la utilització del nom de la sèrie com a gènere d'iTunes, categoria " +"d'iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "Memòria cau de portades de l'iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" +"Habilita que les portades d'iTunes/iBooks es visualitzin i es desin a la " +"memòria cau" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "Dispositiu Apple" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "Comunica't amb iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "" "S'ha detectat un dispositiu Apple, s'està engegant l'iTunes, espereu ..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." @@ -806,35 +853,27 @@ msgstr "" "los des de la biblioteca de l'iTunes a l'escriptori i després afegiu-los a " "la finestra de la biblioteca del calibre." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "S'està actualitzant el llistat de metadades del dispositiu..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "%d de %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "s'ha acabat" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "Fes servir la sèrie com a categoria a l'iTunes/iBooks" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "Memòria cau de portades de l'iTunes/iBooks" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -844,7 +883,7 @@ msgstr "" "Suprimiu-los amb l'aplicació de l'iBooks.\n" "Feu clic a «Mostra detalls» per a la llista." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -852,31 +891,31 @@ msgstr "" "No s'ha pogut convertir algunes portades.\n" "Feu clic a «Mostra detalls» per a la llista." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "Notícies" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "Catàleg" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "Comunica't amb l'iTunes" @@ -927,30 +966,30 @@ msgstr "Bambook" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "S'està aconseguint la llista de llibres del dispositiu..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "S'està transferint llibres al dispositiu..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "S'està afegint llibres al llistat de metadades del dispositiu..." @@ -958,28 +997,28 @@ msgstr "S'està afegint llibres al llistat de metadades del dispositiu..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "S'estan suprimint els llibres del dispositiu..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "S'està suprimint llibres del llistat de metadades del dispositiu..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "S'està enviant metadades al dispositiu..." -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "No s'ha instal·lat el SDK del Bambook" @@ -1195,12 +1234,12 @@ msgstr "" "El Kobo de moment només dóna suport a una col·lecció: la llista " "«Im_Reading». Creeu una etiqueta amb el nom «Im_Reading» " -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "No implementat" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1293,15 +1332,15 @@ msgstr "Comunica't amb un lector Sony PRS-500." msgid "Communicate with all the Sony eBook readers." msgstr "Comunica't amb tots els lectors Sony." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "Tots per títol" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "Tots per autor" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " @@ -1309,7 +1348,7 @@ msgstr "" "Llista dels camps de metadades separats per comes que es convertiran el " "col·leccions al dispositiu. Possibilitats: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " @@ -1319,12 +1358,12 @@ msgstr "" "aquests valors per habilitar-les. Es donarà el nom que s'introdueixi després " "del caràcter «:» a les col·leccions." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" "Carrega miniatures de les portades per als llibres per separat (lectors nous)" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1338,14 +1377,14 @@ msgstr "" "canviar la portada. AVÍS: aquesta opció només s'ha de fer servir amb els " "lectors Sony més nous: 350, 650, 950 i posteriors." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" "Actualitza les portades per separat quan s'utilitzi l'administració " "automàtica (lectors nous)" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " @@ -1355,11 +1394,11 @@ msgstr "" "cop que es connecti el dispositiu. Desactiveu-la si el número de llibres al " "lector no permet un rendiment acceptable." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "Conserva la relació d'aspecte en generar miniatures" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " @@ -1370,6 +1409,20 @@ msgstr "" "voleu que la miniatura tingui la mida màxima sense tenir en compte la " "relació d'aspecte." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "Cerca llibres a totes les carpetes" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" +"Aquesta opció fa que el calibre cerqui llibres a totes les carpetes del " +"dispositiu i les seves targetes. Permet que el calibre trobi llibres que ha " +"posat al dispositiu un altre programari o per descàrrega sense fils." + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1509,7 +1562,7 @@ msgstr "Personalització addicional" msgid "Communicate with an eBook reader." msgstr "Comunica't amb un lector de llibres electrònics." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "Obté informació del dispositiu..." @@ -1690,27 +1743,27 @@ msgstr "" "\n" "Si voleu tota la documentació del sistema de conversió vegeu\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "OPCIONS D'ENTRADA" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "Opcions per controlar el processament del fitxer d'entrada %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "OPCIONS DE SORTIDA" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "Opcions per a controlar el processament de la sortida %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "Opcions per controlar l'aparença de la sortida" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " @@ -1720,18 +1773,18 @@ msgstr "" "Inhabilitat per defecte. %s per habilitar-ho. Es pot inhabilitar accions " "individuals amb les opcions %s." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" "Modifica el text i l'estructura del documenta amb els patrons definits per " "l'usuari." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "Controla l'autodetecció de l'estructura del document." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " @@ -1740,19 +1793,19 @@ msgstr "" "Controla la generació automàtica de l'índex. Si el fitxer d'origen conté un " "índex, s'utilitzarà preferentment aquest en lloc del generat automàticament." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "Opcions per assignar metadades a la sortida" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "Opcions per ajudar a la depuració de la conversió" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "Mostra les receptes integrades" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "S'ha desat la sortida a" @@ -1985,33 +2038,45 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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 "" +"Alguns documents especifiquen els marges de pàgina amb un marge a la dreta i " +"a l'esquerra per a cada paràgraf. El calibre pot intentar detectar i " +"suprimir aquests marges. A vegades es poden suprimir marges que no s'haurien " +"d'haver eliminat, en aquest cas es pot inhabilitar la supressió." + +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:320 +msgid "" "Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Estableix el marge superior en punts (pts). Per defecte és %default. Nota: " "72 pts són 1 polzada (2,54 cm)" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 msgid "" "Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Estableix el marge inferior en punts (pts). Per defecte és %default. Nota: " "72 pts són 1 polzada (2,54 cm)" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 msgid "" "Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Estableix el marge esquerre en punts (pts). Per defecte és %default. Nota: " "72 pt són 1 polzada (2,54 cm)" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 msgid "" "Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Estableix el marge dret en punts (pts). Per defecte és %default. Nota: 72 pt " "són 1 polzada (2,54 cm)" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -2026,7 +2091,7 @@ msgstr "" "del fitxer d'origen. Només alguns format de sortida donen suporta canvis " "d'alineació." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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 " @@ -2036,7 +2101,7 @@ msgstr "" "d'1.5em. L'eliminació de l'espaiament no funcionarà si el fitxer d'origen no " "conté paràgrafs (amb les etiqueteso
or
o
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 " @@ -8049,127 +8130,158 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" "El calibre emmagatzema la llista de llibres i les seves metadades " -"a una\n" -" base de dades. Els fitxers de llibres i portades s'emmagatzemen com " -"a\n" -" fitxers normals a la carpeta de la biblioteca del calibre. La base " -"de dades\n" -" conté una llista dels fitxers i portades corresponents a cada " -"entrada de\n" -" llibre. Aquesta eina comprova que els fitxers de la carpeta de la " -"biblioteca\n" -" de l'ordinador coincideixen amb la informació de la base de " -"dades.
\n" +"El calibre desa la llista i les metadades dels llibres a una base " +"de\n" +" dades. Els fitxers de llibre i les portades es desen com a fitxers " +"normals\n" +" a la carpeta de la biblioteca del calibre. La base de dades conté " +"una llista\n" +" dels fitxers i portades corresponents a cada entrada de llibre. " +"Aquesta\n" +" eina comprova que els fitxers de la carpeta de la biblioteca de " +"l'ordinador\n" +" coincideixen amb la informació de la base de dades.
\n" "\n" -"El resultat de cada comprovació es visualitza a l'esquerra. Les " -"diferents\n" -" comprovacions són:\n" +"
A l'esquerra es mostra el resultat de cada tipus de comprovació. " +"Les\n" +" diferents comprovacions són:\n" "
\n" "Hi ha dos tipus possible de correcció automàtica: Suprimeix\n" -" els marcats i Repara els marcats.
\n" -"Suprimeix els marcats és per suprimir els " -"fitxers/carpetes/portades\n" -" que no tenen entrades a la base de dades. Marqueu la casella al " -"costat de\n" -" l'element que voleu suprimir. Feu-ho amb compte.
\n" -"Repara els marcats només per a portades (les dues línies " -"marcades\n" -" com a «reparables»). Si falten fitxers de portada, en marcar la " -"casella «reparable»\n" -" i prémer aquest botó, se suprimirà la marca de portada de la base de " -"dades per a\n" -" tots els fitxers de la categoria. Si hi ha fitxers de portada " -"addicionals, en marcar la\n" -" casella «reparable» i prémer aquest botó, s'afegirà la marca de " -"portada a la base\n" -" de dades per a tots els fitxers de la categoria.
\n" +"Hi ha dos tipus de solucions possibles: Suprimeix els " +"marcats i\n" +" Corregeix els marcats.
\n" +"Suprimeix els marcats s'utilitza per suprimir els " +"fitxers/carpetes/\n" +" portades que no tenen entrades a la base de dades. Marqueu la " +"casella al\n" +" costat de l'element que voleu suprimir. Feu-ho amb compte
\n" +"Corregeix els marcats es pot aplicar només a les portades " +"i formats\n" +" que no es troben (amb les tres línies marcades com a «corregible»). " +"En el cas\n" +" dels fitxers de portada que no es troben, si marqueu la casella " +"«corregible» i\n" +" premeu aquest botó li direu al calibre que no hi ha portada per a " +"tots els\n" +" llibres de la llista. Trieu aquesta opció si no restaurareu les " +"portades des d'una\n" +" còpia de seguretat. Si es tracta de fitxers de portada addicionals, " +"en marcar la\n" +" casella «corregible» i prémer aquest botó li direu al calibre que " +"els fitxers de\n" +" portada que ha trobat són correctes per a tots els llibres de la " +"llista. Trieu\n" +" aquesta opció si no penseu suprimir el(s) fitxer(s). Si són formats " +"que no es\n" +" troben, en marcar la casella «corregible» i prémer aquest botó li " +"direu al calibre\n" +" que els formats realment han desaparegut. Trieu aquesta opció si no " +"penseu\n" +" restaurar els formats des d'una còpia de seguretat.
\n" +"\n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "To&rna a executar la comprobació" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "Copia al por&ta-retalls" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "Suprimeix els fitxers marcats (subelements marcats)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "Corregeix les seccions marcades (elements corregibles marcats)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "Noms que s'ignoraran:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" "Introduïu comodins estàndard de noms de fitxer separats per comes, com " "synctoy*.dat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "Extensions que s'ignoraran" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" @@ -8177,21 +8289,21 @@ msgstr "" "Introduïu extensions separades per comes sense punt al començament. Només " "per a carpetes de llibres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "(corregible)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "Camí de la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "Nom" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -8206,7 +8318,7 @@ msgstr "Trieu un format" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "Format" @@ -8351,7 +8463,7 @@ msgstr "D'ac&ord" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "&Cancel·la" @@ -8366,7 +8478,7 @@ msgstr "D'on voleu suprimir?" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "Biblioteca" @@ -8400,13 +8512,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "Data" @@ -8439,12 +8551,12 @@ msgid "Author sort" msgstr "Ordre per autor" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 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:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "Els noms d'autor no poden contenir caràcters &." @@ -8645,22 +8757,22 @@ 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:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "Posa en majúscules" @@ -8771,28 +8883,28 @@ msgstr "Heu d'especificar una destinació quant la font és un camp compost" msgid "You must specify a destination identifier type" msgstr "Heu d'especificar un tipus d'identificador de destí" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "Cerca/reemplaça no vàlid" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 msgid "" "Authors cannot be set to the empty string. Book title %s not processed" msgstr "" "Autors no pot deixar-se en blanc. No s'ha processat el llibre amb el títol %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 msgid "Title cannot be set to the empty string. Book title %s not processed" msgstr "" "Títol no pot deixar-se en blanc. No s'ha processat el llibre amb el títol %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "El patró de cerca no és vàlid: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." @@ -8800,25 +8912,25 @@ msgstr "" "S'està aplicant els canvis a %d llibres.\n" "Fase {0} {1}%%." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:587 msgid "Delete saved search/replace" msgstr "Suprimeix el cerca/reemplaça desat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "Es suprimirà el cerca/reemplaça desat. N'esteu segur?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "Desa el cerca/reemplaça" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "Nom del cerca/reemplaça:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -9377,7 +9489,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -9392,7 +9504,7 @@ msgstr "Desa els canvis i edita les metadades de %s" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -9638,7 +9750,7 @@ msgstr "&Contrasenya:" #: /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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "Mo&stra la contrasenya" @@ -9694,37 +9806,52 @@ msgstr "" msgid "Restoring database was successful" msgstr "S'ha aconseguit restaurar la base de dades" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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 "Aquesta cerca desada ja existeix" + +#: /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 "" +"La cerca desada %s ja existeix, potser amb majúscules/minúscules canviades" + +#: /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 "" "La cerca desada actual se suprimirà permanentment. N'esteu segur?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94 msgid "Saved Search Editor" msgstr "Editor de cerques desades" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95 msgid "Saved Search: " msgstr "Cerca desada: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96 msgid "Select a saved search to edit" msgstr "Seleccioneu una cerca desada per editar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:97 msgid "Delete this selected saved search" msgstr "Suprimiu aquesta cerca desada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:99 msgid "Enter a new saved search name." msgstr "Introduïu un nom nou per a la cerca desada." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:100 msgid "Add the new saved search" msgstr "Afegeix un cerca desada nova" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96 +#: /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 "Canvia en nom de la cerca actual pel que hi ha al quadre" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:104 msgid "Change the contents of the saved search" msgstr "Canvieu el contingut de la cerca desada" @@ -10157,17 +10284,21 @@ msgstr "Autors" msgid "Publishers" msgstr "Editorial" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:143 msgid " (not on any book)" msgstr " (a cap llibre)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:146 +msgid "Category lookup name: " +msgstr "Nom de la cerca de categoria: " + +#: /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 "El nom no és vàlid" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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." @@ -10175,19 +10306,19 @@ msgstr "" "Aquest nom conté punts al començament o al final, múltiples punts seguits o " "espais abans o després de punts." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "El nom ja s'està utilitzant" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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 "" "Aquest nom ja està en ús, potser amb majúscules/minúscules diferents." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:229 +#: /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 "L'etiqueta actual s'esborrarà permanentment. N'esteu segur?" @@ -10310,12 +10441,12 @@ msgid "%s (was %s)" msgstr "%s (era %s)" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:85 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 msgid "Item is blank" msgstr "L'element està en blanc" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:86 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "No es pot deixar un element en blanc. En tot cas l'heu d'esborrar." @@ -10387,7 +10518,7 @@ msgid "Send test mail from %s to:" msgstr "Envia un correu de prova de %s a:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:58 -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "&Prova" @@ -10643,64 +10774,64 @@ msgstr "No s'ha pogut descarregar" msgid "Failed to download from %r with error: %s" msgstr "No s'ha pogut descarregar de %r. Hi ha hagut l'error: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "Envia per correu electrònic %s a %s" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "Notícies:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "S'adjunta el diari %s descarregat pel calibre." -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "Llibre:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "Hi trobareu el llibre adjunt" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "per" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "en el format %s" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "S'està enviant correu electrònic a" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" "S'ha de convertir automàticament els llibres següents abans d'enviar-los per " "correu electrònic?" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "No s'ha pogut enviar aquests llibres perquè no s'ha trobat formats adequats:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "No s'ha pogut enviar el llibre" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "s'ha enviat" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "S'ha enviat notícies a" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -10724,67 +10855,85 @@ msgstr "" "group names for the various metadata entries are documented in " "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -11924,51 +12096,60 @@ msgstr "" "Click Find again to go to first match" msgstr "" "No hi ha més coincidències.
Feu clic a «Cerca» per tornar a la " "primera coincidència." -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "Ordena per nom" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "Ordena per popularitat" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "Ordena per valoració mitjana" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "Estableix l'ordre de les entrades a l'explorador d'etiquetes" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "Fes-ho coincidir tot" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "Qualsevol coincidència" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 msgid "" "When selecting multiple entries in the Tag Browser match any or all of them" msgstr "" "Quan es seleccionin múltiples entrades a l'explorador d'etiquetes fes que " "coincideixi una qualsevol o totes" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "Administra les categories d'&usuari" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "Afegiu les vostres categories a l'explorador d'etiquetes" @@ -13704,11 +13900,11 @@ msgstr "&Expulseu el dispositiu connectat" msgid "Calibre Quick Start Guide" msgstr "Guia d'inici ràpid del calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "Mode de depuració" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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 " @@ -13718,33 +13914,23 @@ msgstr "" "el registre de depuració estarà disponible al fitxer: %s
El registre es "
"mostrarà automàticament."
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr "Error de conversió"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr "Recepta inhabilitada"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr "Ha fallat"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-"és el resultat dels esforços de molts voluntaris de tot el món. Si el trobeu "
-"útil, considereu fer una donació per donar suport al seu desenvolupament. La "
-"vostra donació ajudarà que el desenvolupament del calibre continuï."
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr "Hi ha tasques actives. Segur que voleu sortir?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
@@ -13754,11 +13940,11 @@ msgstr ""
" Si sortiu podeu malmetre el dispositiu.
\n"
" Segur que voleu sortir?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr "Tasques actives"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -13969,7 +14155,7 @@ msgid "Options to customize the ebook viewer"
msgstr "Opcions per personalitzar el visor de llibres electrònics"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:47
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr "Recorda la darrera mida de finestra que s'ha fet servir"
@@ -14055,36 +14241,36 @@ msgstr ""
"Esteu editant una drecera de teclat, cal completar-ho primer fent clic fora "
"del quadre d'edició de dreceres."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
msgid "&Lookup in dictionary"
msgstr "&Cerca al diccionari"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..."
msgstr "Vés a..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr "Propera secció"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr "Secció anterior"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr "Inici del document"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr "Final del document"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr "Inici de la secció"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr "Final de la secció"
@@ -14154,82 +14340,86 @@ msgstr ""
msgid "Search for text in book"
msgstr "Cerca un text al llibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:292
msgid "Print Preview"
msgstr "Vista prèvia de la impressió"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:341
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:303
+msgid "Clear list of recently opened books"
+msgstr "Suprimeix la llista de llibres oberts recentment"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:361
msgid "Connecting to dict.org to lookup: %s…"
msgstr "S'està connectant amb dict-org per cercar: %s..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:447
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:467
msgid "Choose ebook"
msgstr "Tria un llibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr "Llibres"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:504
msgid "No matches found for: %s"
msgstr "No s'ha trobat coincidències per a: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:527
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:541
msgid "Loading flow..."
msgstr "S'està carregant el flux..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:579
msgid "Laying out %s"
msgstr "S'està aplicant la disposició %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:596
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:610
msgid "Bookmark #%d"
msgstr "Marcador #%d"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:614
msgid "Add bookmark"
msgstr "Afegeix un nou marcador"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:601
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:615
msgid "Enter title for bookmark:"
msgstr "Introduïu el títol del marcador:"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:625
msgid "Manage Bookmarks"
msgstr "Gestiona els marcadors"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:651
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:665
msgid "Loading ebook..."
msgstr "S'està carregant el llibre..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:663
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:677
msgid "Could not open ebook"
msgstr "No s'ha pogut obrir el llibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:756
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:770
msgid "Options to control the ebook viewer"
msgstr "Opcions de control del visor de llibres"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:763
+#: /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 ""
"Si s'indica, la finestra del visor intentarà anar al primer pla quan "
"s'iniciï."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:766
+#: /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 ""
"Si s'indica, s'intentarà que la finestra del visor s'obri en pantalla "
"completa."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:771
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:785
msgid "Print javascript alert and console messages to the console"
msgstr ""
"Dirigeix les alertes de javascript i els missatges de consola a la consola"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -14307,27 +14497,27 @@ msgstr "Troba la coincidència anterior"
msgid "Print eBook"
msgstr "Imprimeix el llibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr "Canvia la caixa"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr "Intercanvia la caixa"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr "Arrossega per canviar la mida"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr "Mostra"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr "Amaga"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr "Commuta"
@@ -14488,18 +14678,18 @@ msgstr "S'està enviant..."
msgid "Mail successfully sent"
msgstr "S'ha enviat el correu amb èxit"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:96
msgid "OK to proceed?"
msgstr "Voleu continuar?"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:96
+#: /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 ""
"La contrasenya del vostre correu electrònic es visualitzarà a la pantalla. "
"Voleu continuar?"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:139
+#: /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."
@@ -14507,11 +14697,11 @@ msgstr ""
"Si esteu configurant un nou compte de hotmail heu d'iniciar la sessió un cop "
"per poder enviar correus."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:151
msgid "Setup sending email using"
msgstr "Configura l'enviament de correu electrònic amb"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:152
+#: /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}"
@@ -14519,19 +14709,19 @@ msgstr ""
"Si no teniu compte podeu registrar un compte gratuït de correu electrònic "
"{name} a http://{url}. {extra}"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:159
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
msgid "Your %s &email address:"
msgstr "%s adreça de correu &electrònic:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
msgid "Your %s &username:"
msgstr "%s nom d'&usuari:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:162
msgid "Your %s &password:"
msgstr "%s &contrasenya"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:179
+#: /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 "
@@ -14541,23 +14731,41 @@ msgstr ""
"d'afegir la vostra adreça %s a les adreces permeses a la vostra pàgina de "
"gestió del Kindle d'Amazon.com."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:187
msgid "Setup"
msgstr "Configura"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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 "Mala configuració"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:203
msgid "You must set the From email address"
msgstr "Heu d'establir l'adreça de correu electrònic remitent"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:209
-msgid "You must set the username and password for the mail server."
+#: /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 ""
-"Heu d'especificar el nom d'usuari i la contrasenya per al servidor de correu."
+"Heu d'establir tant l'usuari i com la contrasenya del servidor de "
+"correu o no posar ni l'usuari ni la contrasenya."
+
+#: /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 ""
+"Introduïu l'usuari i la contrasenya o establiu l'encriptatge a «Cap» "
+
+#: /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 ""
+"No s'ha establert usuari ni contrasenya per al servidor de correu. La "
+"majoria dels servidors de correu necessiten usuari i contrasenya. N'esteu "
+"segur?"
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:124
msgid "Send email &from:"
@@ -14680,54 +14888,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr "Engega el servidor de &continguts"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr "activat"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr "sí"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr "desactivat"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr "no"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr "avui"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr "ahir"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr "aquest mes"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr "fa dies"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr "en blanc"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr "buit"
@@ -15138,7 +15346,7 @@ msgstr "Autors addicionals"
#: /home/kovid/work/calibre/src/calibre/library/check_library.py:30
msgid "Missing book formats"
-msgstr "Manquen formats de llibre"
+msgstr "Formats de llibre que no es troben"
#: /home/kovid/work/calibre/src/calibre/library/check_library.py:31
msgid "Extra book formats"
@@ -15150,15 +15358,15 @@ msgstr "Hi ha fitxers desconeguts als llibres"
#: /home/kovid/work/calibre/src/calibre/library/check_library.py:33
msgid "Missing covers files"
-msgstr "Falten fitxers de portada"
+msgstr "Fitxers de portada que no es troben"
#: /home/kovid/work/calibre/src/calibre/library/check_library.py:34
msgid "Cover files not in database"
-msgstr "Els fitxers de portada no són a la base de dades"
+msgstr "Fitxers de portada que no són a la base de dades"
#: /home/kovid/work/calibre/src/calibre/library/check_library.py:35
msgid "Folders raising exception"
-msgstr "Hi ha carpetes que donen errors"
+msgstr "Carpetes que donen errors"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:44
msgid ""
@@ -15840,11 +16048,11 @@ msgstr ""
"\n"
"Per aconseguir ajuda per a un comandament: %%prog comandament --help\n"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr "No s'ha donat cap etiqueta"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
@@ -15852,24 +16060,24 @@ msgstr ""
"L'etiqueta només pot contenir lletres minúscules, nombres i guions baixos, i "
"ha de començar amb una lletra"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr "%sLa valoració mitjana és %3.1f"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr "Inici"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
S'està migrant la base de dades antiga a la biblioteca de %s
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.
\n" +#~ "\n" +#~ "The result of each type of check is shown to the left. The " +#~ "various\n" +#~ " checks are:\n" +#~ "
\n" +#~ "There are two kinds of automatic fixes possible: Delete\n" +#~ " marked and Fix marked.
\n" +#~ "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.
\n" +#~ "Fix marked is applicable only to covers (the two lines " +#~ "marked\n" +#~ " 'fixable'). In the case of missing cover files, checking the " +#~ "fixable\n" +#~ " box and pushing this button will remove the cover mark from the\n" +#~ " database for all the files in that category. In the case of extra\n" +#~ " cover files, checking the fixable box and pushing this button will\n" +#~ " add the cover mark to the database for all the files in that\n" +#~ " category.
\n" +#~ " " +#~ msgstr "" +#~ "El calibre emmagatzema la llista de llibres i les seves metadades " +#~ "a una\n" +#~ " base de dades. Els fitxers de llibres i portades s'emmagatzemen com " +#~ "a\n" +#~ " fitxers normals a la carpeta de la biblioteca del calibre. La base " +#~ "de dades\n" +#~ " conté una llista dels fitxers i portades corresponents a cada " +#~ "entrada de\n" +#~ " llibre. Aquesta eina comprova que els fitxers de la carpeta de la " +#~ "biblioteca\n" +#~ " de l'ordinador coincideixen amb la informació de la base de " +#~ "dades.
\n" +#~ "\n" +#~ "El resultat de cada comprovació es visualitza a l'esquerra. Les " +#~ "diferents\n" +#~ " comprovacions són:\n" +#~ "
\n" +#~ "Hi ha dos tipus possible de correcció automàtica: Suprimeix\n" +#~ " els marcats i Repara els marcats.
\n" +#~ "Suprimeix els marcats és per suprimir els " +#~ "fitxers/carpetes/portades\n" +#~ " que no tenen entrades a la base de dades. Marqueu la casella al " +#~ "costat de\n" +#~ " l'element que voleu suprimir. Feu-ho amb compte.
\n" +#~ "Repara els marcats només per a portades (les dues línies " +#~ "marcades\n" +#~ " com a «reparables»). Si falten fitxers de portada, en marcar la " +#~ "casella «reparable»\n" +#~ " i prémer aquest botó, se suprimirà la marca de portada de la base de " +#~ "dades per a\n" +#~ " tots els fitxers de la categoria. Si hi ha fitxers de portada " +#~ "addicionals, en marcar la\n" +#~ " casella «reparable» i prémer aquest botó, s'afegirà la marca de " +#~ "portada a la base\n" +#~ " de dades per a tots els fitxers de la categoria.
\n" +#~ " " + +#~ msgid "Customize searching" +#~ msgstr "Personalitza les cerques" + #~ msgid "Downloads series information from ww2.kdl.org" #~ msgstr "Descarrega informació de la sèrie de ww2.kdl.org" @@ -19234,3 +19646,9 @@ msgstr "No descarreguis els fulls d'estil CSS" #~ "valor de #gènere si A.B.C: {#gènere:sublist(-1,0,.)} s'obté " #~ "CIf 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.
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 -msgid "Communicate with iTunes/iBooks." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 -msgid "Apple device detected, launching iTunes, please wait ..." +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 -msgid "Cannot copy books directly from iDevice. Drag from iTunes Library to desktop, then add to calibre's Library window." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 -msgid "Updating device metadata listing..." -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 -msgid "%d of %d" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 -msgid "finished" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 msgid "Use Series as Category in iTunes/iBooks" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 msgid "Cache covers from iTunes/iBooks" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 +msgid "Apple device" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 +msgid "Communicate with iTunes/iBooks." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 +msgid "Apple device detected, launching iTunes, please wait ..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 +msgid "Cannot copy books directly from iDevice. Drag from iTunes Library to desktop, then add to calibre's Library window." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 +msgid "Updating device metadata listing..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 +msgid "%d of %d" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 +msgid "finished" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:299 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:312 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2759 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2698 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2721 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2739 msgid "Catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "" @@ -802,20 +835,20 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "" @@ -823,8 +856,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "" @@ -834,8 +867,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "" @@ -843,17 +876,17 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -866,7 +899,7 @@ msgid "Communicate with the Blackberry smart phone." msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/blackberry/driver.py:14 -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:253 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:254 #: /home/kovid/work/calibre/src/calibre/devices/nuut2/driver.py:18 #: /home/kovid/work/calibre/src/calibre/devices/prs500/driver.py:90 msgid "Kovid Goyal" @@ -896,7 +929,7 @@ msgstr "" msgid "Communicate with the PocketBook 602/603/902/903 reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:252 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:253 msgid "Communicate with the PocketBook 701" msgstr "" @@ -1138,46 +1171,54 @@ msgstr "" msgid "Communicate with all the Sony eBook readers." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "Comma separated list of metadata fields to turn into collections on the device. Possibilities include: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid ". Two special collections are available: %s:%s and %s:%s. Add these values to the list to enable them. The collections will be given the name provided after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "Normally, the SONY readers get the cover image from the ebook file itself. With this option, calibre will send a separate cover image to the reader, useful if you are sending DRMed books in which you cannot change the cover. WARNING: This option should only be used with newer SONY readers: 350, 650, 950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "Set this option to have separate book covers uploaded every time you connect your device. Unset this option if you have so many books on the reader that performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "Set this option if you want the cover thumbnails to have the same aspect ratio (width to height) as the cover. Unset it if you want the thumbnail to be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "Setting this option tells calibre to look for books in all folders on the device and its cards. This permits calibre to find books put on the device by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1306,7 +1347,7 @@ msgstr "" msgid "Communicate with an eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "" @@ -1405,56 +1446,56 @@ msgid "" "For full documentation of the conversion system see\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "Modify the document text and structure using common patterns. Disabled by default. Use %s to enable. Individual actions can be disabled with the %s options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 #: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "Control the automatic generation of a Table of Contents. By default, if the source file has a Table of Contents, it will be used in preference to the automatically generated one." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "" @@ -1547,228 +1588,232 @@ msgid "An XPath expression. Page breaks are inserted before the specified elemen msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 +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:320 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:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 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:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 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:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 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:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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
or
There was an error reading from file:
"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:204
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:694
msgid " is not a valid picture"
msgstr ""
@@ -5630,7 +5704,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:165
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:409
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:60
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:62
msgid "Change the title of this book"
msgstr ""
@@ -5669,7 +5743,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:544
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:433
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:214
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:293
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:296
msgid "&Series:"
msgstr ""
@@ -5679,7 +5753,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:546
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:434
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:435
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:292
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:295
msgid "List of known series. You can add new series."
msgstr ""
@@ -5693,6 +5767,7 @@ msgid "MOBI Output"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output.py:44
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:72
msgid "Default"
msgstr ""
@@ -5857,7 +5932,7 @@ 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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
msgid "Test"
msgstr ""
@@ -5874,13 +5949,13 @@ 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:81
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:96
#: /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:82
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:97
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:88
msgid "&Next"
msgstr ""
@@ -5948,7 +6023,7 @@ 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:76
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:91
#: /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
@@ -6012,25 +6087,30 @@ msgid "The XPath expression %s is invalid."
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:57
+#: /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:58
+#: /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:59
+#: /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:60
+#: /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"
@@ -6162,8 +6242,8 @@ 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:77
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:78
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:93
#: /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
@@ -6257,11 +6337,11 @@ msgstr ""
#: /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:293
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:557
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:598
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:621
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:680
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
@@ -6271,67 +6351,67 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:215
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:248
#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:252
-#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:994
+#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1031
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:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:637
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:630
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
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:659
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:667
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:661
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Clear '%s'"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:289
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:297
msgid " index:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:366
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:512
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:520
msgid "Apply changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:705
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:713
msgid "Remove series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:716
msgid "Automatically number books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:711
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:719
msgid "Force numbers to start with "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:782
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:790
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:826
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:834
msgid "Remove all tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:846
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:854
msgid "tags to add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:852
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:861
msgid "tags to remove"
msgstr ""
@@ -6424,93 +6504,93 @@ msgstr ""
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1158
-#: /home/kovid/work/calibre/src/calibre/gui2/email.py:299
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:307
msgid "No suitable formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:644
+#: /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:695
+#: /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:696
+#: /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:739
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
msgid "Device: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:741
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
msgid " detected."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:839
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842
msgid "selected to send"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:858
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
msgid "%i of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864
msgid "0 of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "Choose format to send to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:870
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873
msgid "No device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
msgid "Cannot send: No device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
msgid "No card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
msgid "Cannot send: Device has no storage card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:935
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1018
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1152
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:943
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1026
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1160
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:964
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:972
msgid "Sending catalogs to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1065
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1073
msgid "Sending news to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1119
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1127
msgid "Sending books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1159
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167
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:1231
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1239
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1232
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1240
msgid "
Cannot upload books to device there is no more free space available " msgstr "" @@ -6601,7 +6681,7 @@ msgstr "" msgid "&Tags to set on created book entries:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:95 msgid "Fit &cover within view" msgstr "" @@ -6757,7 +6837,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:257 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "" @@ -6774,7 +6854,7 @@ msgstr "" #: #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194 msgid "Format" msgstr "" @@ -6892,12 +6972,12 @@ 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:61 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:63 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:155 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:157 msgid "&Author(s):" msgstr "" @@ -6913,7 +6993,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "" @@ -6930,7 +7010,7 @@ msgstr "" #: #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "" @@ -6965,13 +7045,13 @@ 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1023 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "" @@ -6997,13 +7077,13 @@ msgstr "" #: #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1418 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Invalid author name" msgstr "" #: #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1419 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1435 msgid "Author names cannot contain & characters." msgstr "" @@ -7187,22 +7267,22 @@ msgid "Working" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:260 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:412 +#: /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:411 +#: /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:414 +#: /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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:424 msgid "Capitalize" msgstr "" @@ -7266,49 +7346,49 @@ msgstr "" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:902 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 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:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 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:903 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:955 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:985 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:986 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1003 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1011 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1012 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "That saved search/replace already exists and will be overwritten. Are you sure?" msgstr "" @@ -7334,7 +7414,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:530 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:424 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:786 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:806 msgid "&Rating:" msgstr "" @@ -7342,7 +7422,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:532 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:425 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:426 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:787 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:807 msgid "Rating of this book. 0-5 stars" msgstr "" @@ -7363,7 +7443,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:539 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:432 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:147 msgid "Open Tag Editor" msgstr "" @@ -7416,7 +7496,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:440 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:978 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1015 msgid "&Date:" msgstr "" @@ -7489,14 +7569,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:465 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:397 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:591 msgid "&Basic metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:466 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:404 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:447 msgid "&Custom metadata" msgstr "" @@ -7651,48 +7731,48 @@ msgid "&Search and replace" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:429 msgid "Last modified: %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:122 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:255 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:275 msgid "Could not read cover" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:269 msgid "Could not read cover from %s format" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:276 msgid "The cover in the %s format is invalid" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:746 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:766 msgid "Cover size: %dx%d pixels" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:670 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:693 msgid "Not a valid picture" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:214 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:717 msgid "Specify title and author" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:215 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:698 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:718 msgid "You must specify a title and author before generating a cover" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:902 msgid "Downloading cover..." msgstr "" @@ -7730,59 +7810,59 @@ msgid "The cover is not a valid picture" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:527 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:532 msgid "Choose formats for " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:338 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:564 msgid "No permission" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:339 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:565 msgid "You do not have permission to read the following files:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:366 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:367 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:591 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:596 msgid "No format selected" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:378 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:607 msgid "Could not read metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:379 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:608 msgid "Could not read metadata from %s format" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:453 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:232 msgid " The green color indicates that the current author sort matches the current author" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:456 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:232 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:235 msgid " The red color indicates that the current author sort does not match the current author. No action is required if this is what you want." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:463 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:121 msgid " The green color indicates that the current title sort matches the current title" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:466 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:124 msgid " The red color warns that the current title sort does not match the current title. No action is required if this is what you want." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:53 #: /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 @@ -7791,13 +7871,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:475 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:361 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:400 msgid "Save changes and edit the metadata of %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:820 #: /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 @@ -7806,22 +7887,22 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:690 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:695 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:913 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:954 msgid "This ISBN number is valid" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:698 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:920 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:957 msgid "This ISBN number is invalid" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:783 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:883 msgid "Tags changed" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:784 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:884 msgid "You have changed the tags. In order to use the tags editor, you must either discard or apply these changes. Apply changes?" msgstr "" @@ -7850,12 +7931,12 @@ msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:961 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:342 msgid "Permission denied" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:962 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:311 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:343 msgid "Could not open %s. Is it being used by another program?" msgstr "" @@ -7868,19 +7949,19 @@ msgid "Meta information" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:410 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:92 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:95 msgid "" "Automatically create the title sort entry based on the current title entry.\n" "Using this button to create title sort will change title sort from red to green." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:413 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:117 msgid "Swap the author and title" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:415 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:106 msgid "" "Automatically create the author sort entry based on the current author entry.\n" "Using this button to create author sort will change author sort from red to green." @@ -7891,7 +7972,7 @@ msgid "Title &sort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:419 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:111 msgid "Specify how this book should be sorted when by title. For example, The Exorcist might be sorted as Exorcist, The." msgstr "" @@ -7900,19 +7981,18 @@ msgid "Author S&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:422 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:218 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles Dickens should be sorted as Dickens, Charles.\n" "If the box is colored green, then text matches the individual author's sort strings. If it is colored red, then the authors and this text do not match." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:436 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124 msgid "Remove unused series (Series that have no books)" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:439 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:886 msgid "IS&BN:" msgstr "" @@ -7921,17 +8001,16 @@ msgid "dd MMM yyyy" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:442 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1029 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1066 msgid "Publishe&d:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:445 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:159 msgid "&Fetch metadata from server" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:448 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:627 msgid "&Browse" msgstr "" @@ -7940,7 +8019,7 @@ msgid "Remove border (if any) from cover" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:450 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:629 msgid "T&rim" msgstr "" @@ -7949,12 +8028,12 @@ msgid "Reset cover to default" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:452 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:625 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:631 msgid "&Remove" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:453 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:631 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:637 msgid "Download co&ver" msgstr "" @@ -7963,7 +8042,7 @@ msgid "Generate a default cover based on the title and author" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:455 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:632 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:638 msgid "&Generate cover" msgstr "" @@ -7980,7 +8059,7 @@ msgid "Remove the selected formats for this book from the database." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:461 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:446 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:450 msgid "Set the cover for the book from the selected format" msgstr "" @@ -7989,7 +8068,7 @@ msgid "Update metadata from the metadata in the selected format" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:464 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:652 msgid "&Comments" msgstr "" @@ -8405,7 +8484,7 @@ msgid "&Author:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:215 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:827 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:847 msgid "Ta&gs:" msgstr "" @@ -8583,12 +8662,12 @@ 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:1364 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 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:1365 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1381 msgid "An item cannot be set to nothing. Delete it instead." msgstr "" @@ -8655,7 +8734,7 @@ 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:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "" @@ -8868,6 +8947,8 @@ msgid "Downloading %s from %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dnd.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:458 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:712 msgid "Download failed" msgstr "" @@ -8875,60 +8956,60 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "
Set a regular expression pattern to use when trying to guess ebook metadata from filenames.
\n" @@ -8936,67 +9017,85 @@ msgid "" "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.
To see the full log, click Show Details." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:534 +msgid "Current cover" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:537 +msgid "Searching..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:683 +msgid "Downloading covers for %s, please wait..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:713 +msgid "Failed to download any covers, click \"Show details\" for details." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:719 +msgid "Could not find any covers for %s" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:721 +msgid "Found %d covers of %s. Pick the one you like best." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:766 +#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205 +msgid "Copy to clipboard" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:773 +msgid "Download log" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:809 +msgid "Downloading metadata..." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:827 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:918 +msgid "View log" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/preferences/__init__.py:36 msgid "Restore settings to default values. You have to click Apply to actually save the default settings." msgstr "" @@ -9675,80 +9883,107 @@ msgstr "" msgid "&Configure metadata from file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140 -msgid "High" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:141 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:170 msgid "Low" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:35 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:169 +msgid "High" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:37 +msgid "Very low" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:72 +msgid "Compact Metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:176 msgid "Confirmation dialogs have all been reset" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:155 msgid "&Overwrite author and title by default when fetching metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:156 msgid "Download &social metadata (tags/ratings/etc.) by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:157 msgid "Show notification when &new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:158 +msgid "Yes/No columns have three values (Requires restart)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:159 +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:161 msgid "Automatically send downloaded &news to ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:162 msgid "&Delete news from library when it is automatically sent to reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:136 -msgid "Default network &timeout:" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:137 -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:138 -msgid " seconds" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:142 -msgid "Job &priority:" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:163 msgid "Preferred &output format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:144 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:164 +msgid "Default network &timeout:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:165 +msgid "Set the default timeout for network fetches (i.e. anytime we go out to the internet to get information)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:166 +msgid " seconds" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:167 +msgid "Job &priority:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:171 msgid "Restriction to apply when the current library is opened:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:172 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:146 -msgid "Reset all disabled &confirmation dialogs" +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:173 +msgid "Edit metadata (single) layout:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:147 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:174 +msgid "Choose a different layout for the Edit Metadata dialog. The compact metadata layout favors editing custom metadata over changing covers and formats." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:175 msgid "Preferred &input format order:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:150 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:178 msgid "Use internal &viewer for:" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:179 +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 "" @@ -9794,7 +10029,7 @@ msgstr "" msgid "Add &custom column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion.py:39 +#: /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 "" @@ -9842,7 +10077,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:64 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:142 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:145 msgid "Yes/No" msgstr "" @@ -9864,10 +10099,15 @@ msgstr "" #: #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149 msgid "Modified Date" msgstr "" +#: +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66 +msgid "People's names" +msgstr "" + #: #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71 msgid "Number" @@ -9900,107 +10140,107 @@ msgid "Selected column is not a user-defined column" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:146 msgid "My Tags" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:147 msgid "My Series" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:145 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148 msgid "My Rating" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150 +msgid "People" +msgstr "" + +#: +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:179 msgid "No lookup name was provided" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:183 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:181 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:186 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:191 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:196 msgid "No column heading was provided" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:206 msgid "The lookup name %s is already used" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:213 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:218 msgid "The heading %s is already used" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229 msgid "You must enter a template for composite columns" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:233 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:238 msgid "You must enter at least one value for enumeration columns" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:242 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:241 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:246 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:187 +#: /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:188 +#: /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:189 +#: /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:190 +#: /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:191 +#: /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:192 +#: /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:193 -msgid "Show checkmarks" -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: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" @@ -10008,7 +10248,22 @@ msgid "" msgstr "" #: -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:197 +#: /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.
\n" "For example:\n"
@@ -10019,68 +10274,68 @@ msgid ""
msgstr ""
#:
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:203
+#: /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:204
+#: /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:205
+#: /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:206
+#: /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:207
+#: /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:208
+#: /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:209
-#: /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: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:210
+#: /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:211
+#: /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:212
-msgid "Show in tags browser"
-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: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:214
+#: /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:215
+#: /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"
@@ -10088,7 +10343,7 @@ msgid ""
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:223
msgid "The empty string is always the first value"
msgstr ""
@@ -10124,23 +10379,27 @@ msgstr ""
msgid "&Remove email"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
+#: /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:24
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27
msgid "Email"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:29
+#: /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:30
+#: /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:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:115
msgid "new email address"
msgstr ""
@@ -10152,91 +10411,95 @@ msgstr ""
msgid "Wide"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
+msgid "Off"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
+msgid "Small"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+msgid "Large"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
msgid "Medium"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
-msgid "Small"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:54
-msgid "Large"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Always"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Automatic"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
msgid "Never"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "By first letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
msgid "Partitioned"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:140
msgid "User Interface &layout (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:141
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
msgid "Choose &language (requires restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
msgid "Show &average ratings in the tags browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
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:148
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
msgid "Disable &animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
msgid "Enable system &tray icon (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
msgid "Show &splash screen at startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:148
msgid "Disable ¬ifications in system tray"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
msgid "Use &Roman numerals for series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
msgid "Show cover &browser in a separate window (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
msgid "Tags browser category &partitioning method:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
msgid ""
"Choose how tag browser subcategories are displayed when\n"
"there are more items than the limit. Select by first\n"
@@ -10245,21 +10508,21 @@ msgid ""
"if you never want subcategories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:157
msgid "&Collapse when more items than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:158
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:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
msgid "Categories with &hierarchical items:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
msgid ""
"A comma-separated list of columns in which items containing\n"
"periods are displayed in the tag browser trees. For example, if\n"
@@ -10269,64 +10532,123 @@ 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:170
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:167
msgid "&Toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:168
msgid "&Icon size:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:169
msgid "Show &text under icons:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:173
-msgid "&Split the toolbar into two toolbars"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:170
msgid "Interface font:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
msgid "Change &font (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:228
#: /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:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:235
msgid "Restore &defaults"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:236
msgid "Save changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:237
msgid "Cancel and return to overview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:293
msgid "Restoring to defaults not supported for"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:328
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:326
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:331
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:331
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:132
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:336
+#: /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:46
+msgid "Source"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:48
+msgid "Cover priority"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:93
+msgid "Metadata sources"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:94
+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:96
+msgid "Configure selected source"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:97
+msgid "Downloaded metadata fields"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:98
+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:99
+msgid "Convert all downloaded comments to plain &text"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:100
+msgid "Max. number of &tags to download:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:101
+msgid "Max. &time to wait after first match is found:"
+msgstr ""
+
+#:
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources_ui.py:104
+#: /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:103
+msgid "Max. time to wait after first &cover is found:"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:42
msgid "Failed to install command line tools."
msgstr ""
@@ -10745,20 +11067,20 @@ msgstr ""
msgid "Here you can control how calibre will save your books when you click the Send to Device button. This setting can be overriden for individual devices by customizing the device interface plugins in Preferences->Advanced->Plugins"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:382
msgid "Failed to start content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:111
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:106
msgid "Error log:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:113
msgid "Access log:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:128
msgid "You need to restart the server for changes to take effect"
msgstr ""
@@ -10962,43 +11284,55 @@ msgstr ""
msgid "Switch between library and device views"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:39
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:41
msgid "Separator"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:55
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:58
msgid "Choose library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:219
msgid "The main toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:211
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:220
msgid "The main toolbar when a device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:212
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:221
+msgid "The optional second toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:222
+msgid "The menubar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:223
+msgid "The menubar when a device is connected"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:224
msgid "The context menu for the books in the calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:214
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:226
msgid "The context menu for the books on the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:248
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:260
msgid "Cannot add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:261
msgid "Cannot add the actions %s to this location"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:279
msgid "Cannot remove"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:268
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:280
msgid "Cannot remove the actions %s from this location"
msgstr ""
@@ -11085,8 +11419,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:93
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:277
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:644
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:281
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:653
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
msgid "Search"
msgstr ""
@@ -11178,164 +11512,164 @@ msgstr ""
msgid "&Alternate shortcut:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:332
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:362
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:391
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:403
msgid "Rename %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:336
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:348
msgid "Edit sort for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:343
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:355
msgid "Add %s to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:356
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:368
msgid "Children of %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:366
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:378
msgid "Delete search %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:371
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
msgid "Remove %s from category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:378
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:390
msgid "Search for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:395
msgid "Search for everything but %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:395
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:407
msgid "Add sub-category to %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:411
msgid "Delete user category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:404
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:416
msgid "Hide category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:408
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:420
msgid "Show category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:418
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:430
msgid "Search for books in category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:424
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:436
msgid "Search for books not in category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:433
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:438
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:445
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:450
msgid "Manage %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:441
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:453
msgid "Manage Saved Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:449
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:453
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:461
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:465
msgid "Manage User Categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:460
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:472
msgid "Show all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:463
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:475
msgid "Change sub-categorization scheme"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:780
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:791
msgid "The grouped search term name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1051
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1064
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:1056
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1069
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:1139
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:412
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1152
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:418
msgid "Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1370
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1390
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1399
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1386
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1406
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1415
msgid "Rename user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1371
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1387
msgid "You cannot use periods in the name when renaming user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1391
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1400
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1407
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1416
msgid "The name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1423
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "Duplicate search name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1424
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1440
msgid "The saved search name %s is already used."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1826
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1842
msgid "New Category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1877
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1880
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1893
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1896
msgid "Delete user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1878
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1894
msgid "%s is not a user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1881
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1897
msgid "%s contains items. Do you really want to delete it?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1902
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1918
msgid "Remove category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1903
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1919
msgid "User category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1922
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1938
msgid "Add to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1923
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1939
msgid "A user category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2046
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2062
msgid "Find item in tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2049
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065
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"
@@ -11345,59 +11679,59 @@ msgid ""
"containing the text \"foo\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2058
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2062
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2078
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2063
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079
msgid "Find the first/next matching item"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2070
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2084
msgid "Collapse all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2091
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2108
msgid "No More Matches.
Click Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2104 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2104 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2105 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2122 msgid "Sort by average rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2108 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2125 msgid "Set the sort order for entries in the Tag Browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2114 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2132 msgid "Match all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2114 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2132 msgid "Match any" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2119 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2137 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:2123 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2141 msgid "Manage &user categories" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2126 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2144 msgid "Add your own categories to the Tag Browser" msgstr "" @@ -11439,12 +11773,12 @@ msgstr "" msgid "The following books have already been converted to %s format. Do you wish to reconvert them?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:188 -msgid "&Restore" +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:156 +msgid "&Donate to support calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:190 -msgid "&Donate to support calibre" +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:189 +msgid "&Restore" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:194 @@ -11463,38 +11797,34 @@ msgstr "" 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:502
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:525
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:541
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:578
-msgid "is the result of the efforts of many volunteers from all over the world. If you find it useful, please consider donating to support its development. Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:607
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
" Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:680
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid "will keep running in the system tray. To close it, choose Quit in the context menu of the system tray."
msgstr ""
@@ -11644,10 +11974,6 @@ msgstr ""
msgid "disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:199
-msgid " secs"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/config_ui.py:200
msgid "Mouse &wheel flips pages"
msgstr ""
@@ -11685,7 +12011,7 @@ 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:780
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -11758,36 +12084,36 @@ msgstr ""
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:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -11863,71 +12189,71 @@ msgstr ""
msgid "Clear list of recently opened books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:358
+#: /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:464
+#: /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:465
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:501
+#: /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:538
+#: /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:576
+#: /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:607
+#: /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:611
+#: /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:612
+#: /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:622
+#: /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:662
+#: /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:674
+#: /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:767
+#: /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:774
+#: /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:777
+#: /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:782
+#: /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:788
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -11970,10 +12296,6 @@ msgstr ""
msgid "Find next occurrence"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:205
-msgid "Copy to clipboard"
-msgstr ""
-
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:207
msgid "Reference Mode"
msgstr ""
@@ -12002,27 +12324,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:962
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:997
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1004
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1041
msgid "Toggle"
msgstr ""
@@ -13087,11 +13409,11 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid "The label must contain only lower case letters, digits and underscores, and start with a letter"
msgstr ""
@@ -13099,19 +13421,19 @@ msgstr ""
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1012
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:3033
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3056
msgid "
Migrating old database to ebook library in %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Použít sérii jako kategorii v iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "Ukládat obálky z iTunes/iBooks do mezipaměti" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "Zařízení Apple" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "Komunikovat s iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "Nalezeno zařízení Apple, spouštění iTunes, čekejte..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." @@ -785,35 +818,27 @@ msgstr "" "Nelze kopírovat knihy přímo z iDevice. Přetáhněte je z knihovny iTunes na " "plochu a pak je přidejte do okna knihovny calibre." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "Záznamy metadat v zařízení se aktualizují..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "%d z %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "dokončeno" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "Použít sérii jako kategorii v iTunes/iBooks" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "Ukládat obálky z iTunes/iBooks do mezipaměti" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -823,7 +848,7 @@ msgstr "" "Smazat pomocí aplikace iBooks.\n" "Pro zobrazení seznamu klepněte na 'Zobrazit podrobnosti'." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -831,31 +856,31 @@ msgstr "" "Některé obálky nelze převést.\n" "Pro zobrazení seznamu klepněte na 'Zobrazit podrobnosti'." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "Zprávy" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "Katalog" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "Komunikovat s iTunes." @@ -905,30 +930,30 @@ msgstr "Bambook" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "Získávání seznam knih v zařízení..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "Přenos knih do zařízení..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "Přidávání knih do seznamu metadat v zařízení..." @@ -936,28 +961,28 @@ msgstr "Přidávání knih do seznamu metadat v zařízení..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "Odebírání knih ze zařízení..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "Odebírání knih ze seznamu metadat v zařízení..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "Odesílání metadat do zařízení..." -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "Nebyl nainstalován Bambook SDK." @@ -1164,12 +1189,12 @@ msgstr "" "Kobo podporuje v současné době pouze jednu kolekci: seznam \"Im_Reading\". " "Vytvořte štítek nazvaný \"Im_Reading\" " -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "Neimplementováno" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1262,15 +1287,15 @@ msgstr "Komunikace se čtečkou Sony PRS-500." msgid "Communicate with all the Sony eBook readers." msgstr "Komunikace se všemi čtečkami Sony." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "Vše podle názvu" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "Vše podle autora" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " @@ -1278,7 +1303,7 @@ msgstr "" "Čárkami oddělený seznam polí metadat, ze kterých se má vytvořït sbírka v " "zařízeni. Možnosti zahrnují: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " @@ -1288,11 +1313,11 @@ msgstr "" "do seznamu, abyste je povolili. Sbírky dostanou název uvedený za znakem " "\":\"." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "Nahrát samostatné náhledy obálek knih (novější čtečky)" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1306,13 +1331,13 @@ msgstr "" "UPOZORNĚNÍ: Tato volba by měla být používána pouze s novějšími čtečkami " "SONY: 350, 650, 900 a novějšími." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" "Obnovit samostatné obálky při použití automatické správy (novější čtečky)" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " @@ -1322,11 +1347,11 @@ msgstr "" "připojíte zařízení. Zakažte tuto volbu, pokud máte ve čtečce tolik knih, že " "je výkon nepřijatelný." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "Zachovat poměr stran obálky při sestavování náhledů" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " @@ -1336,6 +1361,17 @@ msgstr "" "stran (šířka ku výšce) jako obálka. Zakažte tuto volbu, pokud chcete, aby " "měl náhled maximální velikost bez ohledu na poměr stran." +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1472,7 +1508,7 @@ msgstr "Další přizpůsobení" msgid "Communicate with an eBook reader." msgstr "Komunikace se čtečkou elektronických knih" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "Zjistit informace o zařízení..." @@ -1648,27 +1684,27 @@ msgstr "" "\n" "Pro plnou dokumentaci převodního systému si prohlédněte\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "NASTAVENÍ VSTUPU" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "Možnosti nastavení zpracování vstupního souboru %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "NASTAVENÍ VÝSTUPU" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "Možnosti nastavení zpracování výstupního souboru %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "Možnosti nastavení vzheldu výstupu" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " @@ -1678,16 +1714,16 @@ msgstr "" "stavu zakázáno. Použijte %s pto povolení. Jednotlivé akce mohou být zakázány " "volbamy %s." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "Upravit text a strukturu dokumentu pomocí určených šablon." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "Nastavení autodetekce struktury dokumentu." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " @@ -1696,19 +1732,19 @@ msgstr "" "Nastavuje automatické vytváření obsahu. Ve výchozím nastavení, pokud má " "zdrojový soubor obsah, bude použit přednostně před automaticky vytvořeným." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "Nastevení výstupních metadat" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "Nastavení pomáhající s laděním převodu" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "Vypsat vestavěné předpisy" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "Výstup uložen do" @@ -1931,33 +1967,41 @@ msgstr "Výraz XPath. Konce stran jsou vloženy před určený prvek." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +msgid "" "Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Nastaví horní okraj v bodech. Výchozi hodnota je %default. Poznámka: 72 bodů " "se rovná 1 palci" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 msgid "" "Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Nastaví dolní okraj v bodech. Výchozi hodnota je %default. Poznámka: 72 bodů " "se rovná 1 palci" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 msgid "" "Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Nastaví levý okraj v bodech. Výchozi hodnota je %default. Poznámka: 72 bodů " "se rovná 1 palci" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 msgid "" "Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Nastaví pravý okraj v bodech. Výchozi hodnota je %default. Poznámka: 72 bodů " "se rovná 1 palci" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1971,7 +2015,7 @@ msgstr "" "(výchozí) nezmění zarovnání ve zdrojovém souboru. Pouze některé výstupní " "formáty podporují zarovnání textu." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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 " @@ -1981,7 +2025,7 @@ msgstr "" "Odstranění mezer nebude fungovat, pokud zdrojový soubor nepoužívá odstavce " "(tagynebo
or
nebo
Cannot upload books to device there is no more free space available " msgstr "" @@ -7771,70 +7831,82 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "&Spustit kontrolu znovu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "Kopírovat do schránky" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "Smazat označené soubory (zaškrtnuté podpoložky)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "Opravit označené sekce (označené položky)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "Jména k ignorování:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" "Vlož čárkou oddělená jména souborů se zástupnými znaky, např. synctoy*.dat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "Ignorované přípony" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" msgstr "" "Vložte čárkou oddělené přípony bez tečky. Použité pouze ve složkách knih" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "(opravitelné)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "Cesta z knihovny" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "Jméno" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7849,7 +7921,7 @@ msgstr "Vyberte formát" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "Formát" @@ -7985,7 +8057,7 @@ msgstr "&OK" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "&Zrušit" @@ -8000,7 +8072,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "Knihovna" @@ -8034,13 +8106,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "Datum" @@ -8067,12 +8139,12 @@ msgid "Author sort" msgstr "Třídění podle autora" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "Neplatné jméno autora" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "Jméno autora nemůže obsahovat znaky &." @@ -8263,22 +8335,22 @@ 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:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "Velká počáteční písmena" @@ -8374,26 +8446,26 @@ msgstr "Musíte určit cíl, když je zdroj kompozitní pole" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "Neplatné vyhledání/nahrazení" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 msgid "" "Authors cannot be set to the empty string. Book title %s not processed" msgstr "Jméno autora nemůže být prázdné. Kniha %s nezpracována" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 msgid "Title cannot be set to the empty string. Book title %s not processed" msgstr "Název nemůže být prázdný. Kniha %s nezpracována" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "Vzor pro hledání není platný: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." @@ -8401,25 +8473,25 @@ msgstr "" "Aplikuji změny na %d knih.\n" "Fáze {0} {1}%%." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:587 msgid "Delete saved search/replace" msgstr "Smazat uložené hledej/nahraď" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "Uložit hledat/nahradit" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8952,7 +9024,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8967,7 +9039,7 @@ msgstr "Uložit změny a změnit metadata %s" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -9200,7 +9272,7 @@ msgstr "&Heslo:" #: /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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "Zobrazit he&slo" @@ -9243,36 +9315,50 @@ msgstr "" msgid "Restoring database was successful" msgstr "Obnova databáze byla úspěšná" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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 "Současné uložené hledání bude trvale smazané. Jste si jisti?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94 msgid "Saved Search Editor" msgstr "Editor uložených hledání" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95 msgid "Saved Search: " msgstr "Uložit hledání: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96 msgid "Select a saved search to edit" msgstr "Označte uložené hledání pro editaci" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:97 msgid "Delete this selected saved search" msgstr "Smazat toto uložené hledání" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:99 msgid "Enter a new saved search name." msgstr "Zadejte nový název pro uložené hledání" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:100 msgid "Add the new saved search" msgstr "Přidat nové uložené hledání" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96 +#: /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 "Změnit obsah uloženého hledání" @@ -9650,34 +9736,38 @@ msgstr "Autoři" msgid "Publishers" msgstr "Vydavatelé" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:143 msgid " (not on any book)" msgstr " (na žádnou knihu)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "Jméno již bylo použito" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9797,12 +9887,12 @@ msgid "%s (was %s)" msgstr "%s (bylo %s)" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:85 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 msgid "Item is blank" msgstr "Položka je prázdná" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:86 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "Položka nemůže být nastavena na nic. Smažte ji." @@ -9873,7 +9963,7 @@ msgid "Send test mail from %s to:" msgstr "Poslat testovací mail od %s pro:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:58 -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "&Test" @@ -10121,62 +10211,62 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "E-mail %s pro %s" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "Zprávy:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "Přiložen je %s časopis stažený calibre." -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "E-book:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "Přiloženo, najdete e-book" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "od" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "v %s formátu" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "Odeslat email" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "Automaticky konvertovat knihy před emailovým odesláním?" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Nemohu emailovat následující knihy, nebyl nalezen žádný vhodný formát:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "Chyba při odeslání knihy" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "odesláno" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "Odeslat zprávy do" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -10190,67 +10280,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -11330,55 +11460,63 @@ msgstr "" "Click Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "Seřadit dle jména" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "Seřadit dle popularity" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "Seřadit podle průměrného hodnocení" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "Nastavit pořadí položek v Tag prohlížeči" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "Porovnat vše" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "Najít kterékoliv" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 msgid "" "When selecting multiple entries in the Tag Browser match any or all of them" msgstr "" "Když se označí více záznamů v Prohlížeči tagů, najdi libovolný, nebo všechny " "z nich" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "Spravovat uživatelské kategorie" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "Přidat vaše vlastní kategorie do Tag Browseru" @@ -12890,44 +13040,34 @@ msgstr "&Vysunout připojené zařízení" msgid "Calibre Quick Start Guide" msgstr "Calibre příručka pro začínající uživatele" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "Ladící režim" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr "Chyba převodu"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr "Zdroj zakázán"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr "Selhalo"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-"je výsledek přispění mnoha dobrovolníků z celého světa. Pokud se Vám produkt "
-"líbí, podpořte jejich práci nějakým příspěvkem. Váš dar pomůže udržet vývoj "
-"calibre v chodu."
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr "Prpbíha zpracování úloh. Opravdu chcete program ukončit?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
@@ -12937,11 +13077,11 @@ msgstr ""
" Ukončení může způsobit poškození v zařízení.
\n"
" Jste si jisti?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr "Aktivní joby"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -13146,7 +13286,7 @@ msgid "Options to customize the ebook viewer"
msgstr "Možnosti úpravy prohlížeče elektronických knih"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:47
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr "Zapamatuj si posledně použitou velikost okna"
@@ -13228,36 +13368,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
msgid "&Lookup in dictionary"
msgstr "Podívat do slovníku"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..."
msgstr "Přejít na..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr "Další sekce"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr "Předchozí sekce"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr "Začátek dokumentu"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr "Konec dokumentu"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr "Začátek sekce"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr "Konec sekce"
@@ -13325,79 +13465,83 @@ msgstr "Jít na odkaz. K získání odkazujících čísel použijte reference m
msgid "Search for text in book"
msgstr "Hledat text v knize"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:292
msgid "Print Preview"
msgstr "Náhled tisku"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:341
+#: /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 "Připojení k dict.org pro vyhledávání: %s…"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:447
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:467
msgid "Choose ebook"
msgstr "Vyberte elektronickou knihu"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr "Elektronické knihy"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:504
msgid "No matches found for: %s"
msgstr "Nenalezena shoda pro: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:527
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:541
msgid "Loading flow..."
msgstr "Načítam tok..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:579
msgid "Laying out %s"
msgstr "Rozvržení %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:596
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:610
msgid "Bookmark #%d"
msgstr "Záložka #%d"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:614
msgid "Add bookmark"
msgstr "Přidat záložku"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:601
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:615
msgid "Enter title for bookmark:"
msgstr "Zadejte název záložky:"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:625
msgid "Manage Bookmarks"
msgstr "Spravovat záložky"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:651
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:665
msgid "Loading ebook..."
msgstr "Načítám knihu..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:663
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:677
msgid "Could not open ebook"
msgstr "Nemohu otevřít eknihu"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:756
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:770
msgid "Options to control the ebook viewer"
msgstr "Volby ke kontrole prohlížeče ebooků"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:763
+#: /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 "Pokud specifikováno, okno prohlížeče se zobrazí po startu v popředí."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:766
+#: /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 ""
"Pokud je zadáno, pokusí se při spuštění otevřít okno prohlížeče na celou "
"obrazovku."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:771
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:785
msgid "Print javascript alert and console messages to the console"
msgstr "Tisknout upozornění javascriptu a konzolové zprávy do konzole"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -13475,27 +13619,27 @@ msgstr "Najít předchozí výskyt"
msgid "Print eBook"
msgstr "Vytisknout eBook"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr "Změnit velikost písmen"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr "Zaměnit malá/velká písmena"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr "Táhněte pro změnu velikosti"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr "Zobrazit"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr "Skrýt"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr "Přepínač"
@@ -13648,16 +13792,16 @@ msgstr "Odesílám..."
msgid "Mail successfully sent"
msgstr "E-mail úspěšně odeslán"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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."
@@ -13665,29 +13809,29 @@ msgstr ""
"Pokud nastavujete nový účet služby Hotmail, musíte se nejdříve přihlásit než "
"budete moci odeslat e-maily."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:150
+#: /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:152
+#: /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:159
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
msgid "Your %s &email address:"
msgstr "Vaše %s &emailová adresa:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
msgid "Your %s &username:"
msgstr "Vaše %s &uživatelské jméno:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:162
msgid "Your %s &password:"
msgstr "Vaše %s &heslo:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:179
+#: /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 "
@@ -13697,22 +13841,35 @@ msgstr ""
"přidat svoji %s emailovou adresu do povolených emailových adres na stránce "
"Amazon.com - správa Kindle."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:187
msgid "Setup"
msgstr "Nastavení"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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 "Špatná konfigurace"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:203
msgid "You must set the From email address"
msgstr "Musíte zadat emailovou adresu odesílatele"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:209
-msgid "You must set the username and password for the mail server."
-msgstr "Musíte nastavit jméno a heslo pro emailový server."
+#: /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:"
@@ -13830,54 +13987,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr "Zapnout server s obsahem"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr "zaškrtnuto"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr "ano"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr "nezaškrtnuto"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr "ne"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr "dnes"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr "včera"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr "tentoměsíc"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr "dní zpět"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr "prázdný"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr "prázdný"
@@ -14779,11 +14936,11 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr "Nebyl vložen žádný popisek"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
@@ -14791,23 +14948,23 @@ msgstr ""
"Štítek musí obsahovat pouze malá písmena, číslice a podtržítka, a musí "
"začínat písmenem"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr "%sPrůměrné hodnocení je %3.1f"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr "Hlavní"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
Migruji starou databázi do knihovy ebooků v %s
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.
" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:65 +msgid "Disable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:69 +msgid "Enable Apple driver" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:117 +msgid "Use Series as Category in iTunes/iBooks" +msgstr "Brug serier som kategori i iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:118 +msgid "Enable to use the series name as the iTunes Genre, iBooks Category" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:120 +msgid "Cache covers from iTunes/iBooks" +msgstr "Cache omslag fra iTunes/iBooks" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:122 +msgid "Enable to cache and display covers from iTunes/iBooks" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:176 msgid "Apple device" msgstr "Apple enhed" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:94 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:178 msgid "Communicate with iTunes/iBooks." msgstr "Kommunikér med iTunes/iBooks." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:100 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:190 msgid "Apple device detected, launching iTunes, please wait ..." msgstr "Apple-enhed fundet, starter iTunes, vent venligst..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:102 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:192 msgid "" "Cannot copy books directly from iDevice. Drag from iTunes Library to " "desktop, then add to calibre's Library window." @@ -788,35 +821,27 @@ msgstr "" "Kan ikke kopiere bøger direkte fra iDevice. Træk fra iTunes-bibliotek til " "skrivebord, tilføj herefter til calibres biblioteksvindue." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:262 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:265 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:355 msgid "Updating device metadata listing..." msgstr "Opdaterer enhed metadata listen..." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:341 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:380 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:949 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:989 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2976 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3016 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:431 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:470 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1044 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1084 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3068 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3108 msgid "%d of %d" msgstr "%d af %d" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:387 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:994 -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3022 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:477 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1089 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:3114 msgid "finished" msgstr "afsluttet" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:562 -msgid "Use Series as Category in iTunes/iBooks" -msgstr "Brug serier som kategori i iTunes/iBooks" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:564 -msgid "Cache covers from iTunes/iBooks" -msgstr "Cache omslag fra iTunes/iBooks" - -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:576 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:662 msgid "" "Some books not found in iTunes database.\n" "Delete using the iBooks app.\n" @@ -826,7 +851,7 @@ msgstr "" "Sletter ved at anvende iBooks app.\n" "Klik 'Show Details' for en liste." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:913 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:1008 msgid "" "Some cover art could not be converted.\n" "Click 'Show Details' for a list." @@ -834,31 +859,31 @@ msgstr "" "Nogle omslagsdele kunne ikke konverteres.\n" "Klik 'Show Details' for en liste." -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2557 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2650 #: /home/kovid/work/calibre/src/calibre/devices/nook/driver.py:100 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:447 #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:470 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:909 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:915 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:945 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:71 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:445 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:293 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:306 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:294 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:307 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2754 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:159 msgid "News" msgstr "Nyheder" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2558 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2651 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:634 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2630 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2648 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2716 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2734 msgid "Catalog" msgstr "Katalog" -#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2880 +#: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2972 msgid "Communicate with iTunes." msgstr "Kommunikér med iTunes." @@ -901,30 +926,30 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:67 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:70 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:73 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:230 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:120 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:123 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:126 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:190 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:197 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:220 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:232 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:122 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:125 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:128 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:196 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:203 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:226 msgid "Getting list of books on device..." msgstr "Henter liste over bøger på enheden..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:249 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:251 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:255 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:257 msgid "Transferring books to device..." msgstr "Overfører bøger til enhed..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:347 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:382 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:304 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:349 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:384 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 msgid "Adding books to device metadata listing..." msgstr "Tilføjer bøger til enhedens metadataliste..." @@ -932,28 +957,28 @@ msgstr "Tilføjer bøger til enhedens metadataliste..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:102 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:113 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:299 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:331 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:310 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:328 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:301 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:333 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:316 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:334 msgid "Removing books from device..." msgstr "Fjerner bøger fra enhed..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:342 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:335 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:340 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:337 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:344 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:341 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:346 msgid "Removing books from device metadata listing..." msgstr "Fjerner bøger fra enhedens metadataliste..." #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:370 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:376 msgid "Sending metadata to device..." msgstr "Sender metadata til enhed..." -#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:132 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/libbambookcore.py:129 msgid "Bambook SDK has not been installed." msgstr "" @@ -1160,12 +1185,12 @@ msgstr "" "Kobo-enheden understøtter i øjeblikket kun en collection: \"Im_Reading\"-" "listen. Opret et mærke kaldet \"Im_Reading\" " -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:466 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:468 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:383 msgid "Not Implemented" msgstr "Ikke implementeret" -#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:467 +#: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:469 msgid "" "\".kobo\" files do not exist on the device as books instead, they are rows " "in the sqlite database. Currently they cannot be exported or viewed." @@ -1258,15 +1283,15 @@ msgstr "Kommunikér med Sony PRS-500 e-bogslæser." msgid "Communicate with all the Sony eBook readers." msgstr "Kommunikér med alle Sony eBook læsere." -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:61 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 msgid "All by title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:62 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:63 msgid "All by author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:65 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:66 msgid "" "Comma separated list of metadata fields to turn into collections on the " "device. Possibilities include: " @@ -1274,18 +1299,18 @@ msgstr "" "Komma separeret liste af metadata felter som oversættes til collections på " "enheden. Muligheder omfatter: " -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:68 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:69 msgid "" ". Two special collections are available: %s:%s and %s:%s. Add these values " "to the list to enable them. The collections will be given the name provided " "after the \":\" character." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:72 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 msgid "Upload separate cover thumbnails for books (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:73 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:74 msgid "" "Normally, the SONY readers get the cover image from the ebook file itself. " "With this option, calibre will send a separate cover image to the reader, " @@ -1294,29 +1319,40 @@ msgid "" "950 and newer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:79 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:80 msgid "" "Refresh separate covers when using automatic management (newer readers)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:81 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:82 msgid "" "Set this option to have separate book covers uploaded every time you connect " "your device. Unset this option if you have so many books on the reader that " "performance is unacceptable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:85 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:86 msgid "Preserve cover aspect ratio when building thumbnails" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:87 +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:88 msgid "" "Set this option if you want the cover thumbnails to have the same aspect " "ratio (width to height) as the cover. Unset it if you want the thumbnail to " "be the maximum size, ignoring aspect ratio." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:92 +msgid "Search for books in all folders" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:94 +msgid "" +"Setting this option tells calibre to look for books in all folders on the " +"device and its cards. This permits calibre to find books put on the device " +"by other software and by wireless download." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/prs505/sony_cache.py:190 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:69 msgid "Unnamed" @@ -1451,7 +1487,7 @@ msgstr "Yderligere tilpasning" msgid "Communicate with an eBook reader." msgstr "Kommunikér med en e-bogslæser." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:92 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:94 msgid "Get device information..." msgstr "Hent enhedsoplysninger..." @@ -1625,43 +1661,43 @@ msgstr "" "\n" "For fuld dokumentation af konverteringssystemet se\n" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:108 msgid "INPUT OPTIONS" msgstr "INPUT VALGMULIGHEDER" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:107 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:109 msgid "Options to control the processing of the input %s file" msgstr "Valgmuligheder til styring af behandlingen af input %s filen" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:113 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:115 msgid "OUTPUT OPTIONS" msgstr "OUTPUT VALGMULIGHEDER" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:114 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:116 msgid "Options to control the processing of the output %s" msgstr "Valgmuligheder til styring af behandlingen af output %s" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:128 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:130 msgid "Options to control the look and feel of the output" msgstr "Valgmuligheder til styring af udseendet af output" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:143 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:145 msgid "" "Modify the document text and structure using common patterns. Disabled by " "default. Use %s to enable. Individual actions can be disabled with the %s " "options." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:151 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:16 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:18 msgid "Modify the document text and structure using user defined patterns." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:162 msgid "Control auto-detection of document structure." msgstr "Styring af auto-detektion af dokumentets struktur." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:169 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:172 msgid "" "Control the automatic generation of a Table of Contents. By default, if the " "source file has a Table of Contents, it will be used in preference to the " @@ -1671,19 +1707,19 @@ msgstr "" "udgangspunkt vil en evt. indholdsfortegnelse i kildefilen blive foretrukket, " "fremfor en selvgenereret." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:179 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 msgid "Options to set metadata in the output" msgstr "Muligheder for at angive metadata i output" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:182 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:185 msgid "Options to help with debugging the conversion" msgstr "Muligheder der kan hjælpe med konverteringsfejlfinding" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:208 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:211 msgid "List builtin recipes" msgstr "Fremvis indbyggede opskrifter" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:281 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:284 msgid "Output saved to" msgstr "Output gemt til" @@ -1901,33 +1937,41 @@ msgstr "Et XPath-udtryk. Sideskift isættes før de angivne emner." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:309 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:320 +msgid "" "Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Indstil topmargin i pkt (typografiske punkter). Standard er %default. " "Bemærk: 72 pkt svarer til 1 US tomme" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:314 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:325 msgid "" "Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Indstil bundmargin i pkt (typografiske punkter). Default er %default. Note: " "72 pkt svarer til 1 US tomme" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:319 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 msgid "" "Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Indstil venstre margin i pkt (typografiske punkter). Standard er %default. " "Bemærk: 72 pkt svarer til 1 US tomme" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:324 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:335 msgid "" "Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" "Indstil højre margin i pkt (typografiske punkter). Standard er %default. " "Bemærk: 72 pkt svarer til 1 US tomme" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:330 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:341 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 " @@ -1939,7 +1983,7 @@ msgstr "" "margin. \"original\" (standard) - ingen ændring. Bemærk at kun nogle output-" "formater understøtter lige margin." -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:340 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:351 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 " @@ -1949,7 +1993,7 @@ msgstr "" "removal will not work if the source file does not use paragraphs Valget har " "ikke effekt på kildefiler, som ikke indeholdereller
or
eller
Cannot upload books to device there is no more free space available " msgstr "" @@ -7743,49 +7803,61 @@ msgid "" " have no entries in the database. Check the box next to the item you " "want\n" " to delete. Use with caution.
\n" -"Fix marked is applicable only to covers (the two lines " -"marked\n" -" 'fixable'). In the case of missing cover files, checking the " -"fixable\n" -" box and pushing this button will remove the cover mark from the\n" -" database for all the files in that category. In the case of extra\n" -" cover files, checking the fixable box and pushing this button will\n" -" add the cover mark to the database for all the files in that\n" -" category.
\n" +"\n" +"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.
\n" +"\n" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:220 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:226 msgid "&Run the check again" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:223 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:229 msgid "Copy &to clipboard" msgstr "Kopiér &til udklipsholder" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 msgid "Delete marked files (checked subitems)" msgstr "Slet markerede filer (checket underemner)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:242 msgid "Fix marked sections (checked fixable items)" msgstr "Ordn markerede sektioner (checket ordenbare emner)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:252 msgid "Names to ignore:" msgstr "Navne der skal ignoreres:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:257 msgid "" "Enter comma-separated standard file name wildcards, such as synctoy*.dat" msgstr "" "Indtast komma-separeret standard filnavn jokertegn, såsom synctoy*.dat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:260 msgid "Extensions to ignore" msgstr "Fil-extensions der skal ignoreres" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:265 msgid "" "Enter comma-separated extensions without a leading dot. Used only in book " "folders" @@ -7793,21 +7865,21 @@ msgstr "" "Indtast komma-separeret udvidelser uden foranstillet punktum. Anvendes kun i " "bogmapper" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:314 msgid "(fixable)" msgstr "(ordenbare)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 msgid "Path from library" msgstr "Sti fra bibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:89 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:253 +#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:256 msgid "Name" msgstr "Navn" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/check_library.py:366 msgid "" "The marked files and folders will be permanently deleted. Are you " "sure?" @@ -7822,7 +7894,7 @@ msgstr "Vælg format" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_format_device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 msgid "Format" msgstr "Format" @@ -7958,7 +8030,7 @@ msgstr "&OK" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comments_dialog.py:25 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_dialog.py:31 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tweak_epub_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:226 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231 msgid "&Cancel" msgstr "&Annullér" @@ -7973,7 +8045,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_location_ui.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:63 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:230 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:228 msgid "Library" msgstr "Bibliotek" @@ -8007,13 +8079,13 @@ msgid "Location" 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:69 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 #: /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:71 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:241 #: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:321 -#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:575 +#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:573 msgid "Date" msgstr "Dato" @@ -8040,12 +8112,12 @@ msgid "Author sort" msgstr "Forfattersortering" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1433 msgid "Invalid author name" msgstr "Ugyldigt forfatternavn" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1434 msgid "Author names cannot contain & characters." msgstr "Forfatternavne kan ikke indeholde & tegnet." @@ -8238,22 +8310,22 @@ 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:412 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:420 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:411 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:419 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:414 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:422 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:415 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:423 msgid "Capitalize" msgstr "Store begyndelsesbogstaver" @@ -8363,27 +8435,27 @@ msgstr "Du skal angive en destination, når kilden er et sammensat felt" msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:756 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:775 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:905 msgid "Search/replace invalid" msgstr "Søg/erstat ugyldig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:760 msgid "" "Authors cannot be set to the empty string. Book title %s not processed" msgstr "" "Forfattere kan ikke være den tomme streng. Bogtitel %s behandles ikke" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:779 msgid "Title cannot be set to the empty string. Book title %s not processed" msgstr "Titler kan ikke være den tomme streng. Bogtitel %s behandles ikke" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:897 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:906 msgid "Search pattern is invalid: %s" msgstr "Søge mønsteret er ugyldigt: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:958 msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." @@ -8391,25 +8463,25 @@ msgstr "" "Udfører ændringer på %d bøger.\n" "Fase {0} {1}%%." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:988 #: /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:980 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:989 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:997 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1014 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1007 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1015 msgid "" "That saved search/replace already exists and will be overwritten. Are you " "sure?" @@ -8946,7 +9018,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:50 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:102 +#: /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" @@ -8961,7 +9033,7 @@ msgstr "Gem ændringer og redigér %s metadata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:46 -#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:103 +#: /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" @@ -9197,7 +9269,7 @@ msgstr "&Adgangskode:" #: /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:172 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:173 msgid "&Show password" msgstr "Vi&s adgangskode" @@ -9240,37 +9312,51 @@ msgstr "" msgid "Restoring database was successful" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor.py:55 +#: /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 "" "Den aktuelt gemte søgning vil blive permanent slettet. Er du sikker?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:88 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94 msgid "Saved Search Editor" msgstr "Gemt søgnings-editor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95 msgid "Saved Search: " msgstr "Gemt søgning: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96 msgid "Select a saved search to edit" msgstr "Vælg en gemt søgning til redigering" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:97 msgid "Delete this selected saved search" msgstr "Slet den valgte gemte søgning" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:99 msgid "Enter a new saved search name." msgstr "Indtast et nyt gemt søgenavn." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:100 msgid "Add the new saved search" msgstr "Tilføj den nye gemte søgning" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:96 +#: /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 "Ændre indholdet af den gemte søgning" @@ -9650,34 +9736,38 @@ msgstr "Forfattere" msgid "Publishers" msgstr "Udgiver" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:129 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:143 msgid " (not on any book)" msgstr " (ikke i nogen bøger)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:207 +#: /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:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:208 +#: /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:185 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:215 +#: /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:151 msgid "Name already used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:186 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:216 +#: /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:229 +#: /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 "" @@ -9798,12 +9888,12 @@ msgid "%s (was %s)" msgstr "%s (var %s)" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:85 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1325 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1379 msgid "Item is blank" msgstr "Emne er blankt" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_list_editor.py:86 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1380 msgid "An item cannot be set to nothing. Delete it instead." msgstr "Et emne kan ikke sættes til ingenting. Slet det istedet." @@ -9874,7 +9964,7 @@ msgid "Send test mail from %s to:" msgstr "Send test e-mail fra %s til:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:58 -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:134 msgid "&Test" msgstr "&Test" @@ -10129,62 +10219,62 @@ msgstr "" msgid "Failed to download from %r with error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:147 msgid "Email %s to %s" msgstr "Email %s til %s" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:189 msgid "News:" msgstr "Nyheder:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:191 msgid "Attached is the %s periodical downloaded by calibre." msgstr "Som bilag er %s tidsskriftet hentet af calibre." -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:244 msgid "E-book:" msgstr "E-bog:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:245 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:253 msgid "Attached, you will find the e-book" msgstr "Tilknyttet, vil du finde e-bogen" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:246 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:254 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:185 msgid "by" msgstr "af" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:247 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:255 msgid "in the %s format." msgstr "i %s formatet." -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:270 msgid "Sending email to" msgstr "Sender e-mail til" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:293 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:301 msgid "Auto convert the following books before sending via email?" msgstr "Auto konvertér følgende bøger før sending via e-mail?" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:300 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:308 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Kunne ikke e-maile følgende bøger da ingen egnede formater blev fundet:" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:314 msgid "Failed to email book" msgstr "Emailsending af bog fejlede" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:317 msgid "sent" msgstr "sendt" -#: /home/kovid/work/calibre/src/calibre/gui2/email.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/email.py:342 msgid "Sent news to" msgstr "Send nyheder til" -#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:129 msgid "" "Set a regular expression pattern to use when trying to guess ebook " @@ -10198,67 +10288,85 @@ msgid "" "tooltips.
Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's " "for year.
\n" @@ -11339,48 +11469,56 @@ msgstr "" "Click Find again to go to first match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by name" msgstr "Sortér efter navn" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120 msgid "Sort by popularity" msgstr "Sortér efter popularitet" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121 msgid "Sort by average rating" msgstr "Sortér efter middelvurdering" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124 msgid "Set the sort order for entries in the Tag Browser" msgstr "Angiv sorteringsrækkefølgen for indgange mærke-browser" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match all" msgstr "Match alle" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131 msgid "Match any" msgstr "Match enhver" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136 msgid "" "When selecting multiple entries in the Tag Browser match any or all of them" msgstr "" "Når flere indgange vælges i mærke-browser, match enhver eller dem alle" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140 msgid "Manage &user categories" msgstr "Administrér &brugerkategorier" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143 msgid "Add your own categories to the Tag Browser" msgstr "Tilføj dine egne kategorier til mærke-browseren" @@ -12940,44 +13090,34 @@ msgstr "&Skub forbunden enhed ud" msgid "Calibre Quick Start Guide" msgstr "Calibre kvik start guide" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305 msgid "Debug mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr "Konverteringsfejl"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr "Opskrift deaktiveret"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr "Fejlede"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-"er resultatet af mange frivilliges indsats fra hele verden. Hvis du finder "
-"calibre brugbart, venligst overvej at give en donation for at støtte dets "
-"udvikling. Din donation hjælper med calibres fortsatte udvikling."
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr "Der er aktive opgaver. Er du sikker på du vil afslutte?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device!
\n"
" Quitting may cause corruption on the device.
\n"
@@ -12988,11 +13128,11 @@ msgstr ""
"enheden.
\n"
" Er du sikker på at du vil afslutte?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -13196,7 +13336,7 @@ msgid "Options to customize the ebook viewer"
msgstr "Indstillinger til tilpasning af e-bogsviseren"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:47
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr "Husk størrelsen på vinduet"
@@ -13277,36 +13417,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
msgid "&Lookup in dictionary"
msgstr "&Opslag i ordbog"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..."
msgstr "Gå til..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr "Næste sektion"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr "Forrige sektion"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr "Dokument start"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr "Dokument slut"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr "Sektion start"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr "Sektion slut"
@@ -13375,79 +13515,83 @@ msgstr ""
msgid "Search for text in book"
msgstr "Søg efter tekst bog"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:292
msgid "Print Preview"
msgstr "Forhåndsvisning af udskrift"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:341
+#: /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 "Forbinder til dict.org for opslag: %s…"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:447
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:467
msgid "Choose ebook"
msgstr "Vælg e-bog"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr "E-bøger"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:504
msgid "No matches found for: %s"
msgstr "Ingen match fundet for: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:527
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:541
msgid "Loading flow..."
msgstr "Henter flow..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:579
msgid "Laying out %s"
msgstr "Udlægning %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:596
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:610
msgid "Bookmark #%d"
msgstr "Bogmærke #%d"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:614
msgid "Add bookmark"
msgstr "Tilføj bogmærke"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:601
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:615
msgid "Enter title for bookmark:"
msgstr "Indtast bogmærketitel:"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:625
msgid "Manage Bookmarks"
msgstr "Administrér bogmærker"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:651
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:665
msgid "Loading ebook..."
msgstr "Henter e-bog..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:663
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:677
msgid "Could not open ebook"
msgstr "Kunne ikke åbne e-bog"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:756
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:770
msgid "Options to control the ebook viewer"
msgstr "Valg til at styre e-bogsviser"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:763
+#: /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 ""
"Hvis specificeret, vil visningsvindue prøve at komme i front ved start."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:766
+#: /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 ""
"Hvis angivet, vil oversigtsvindue prøve at åbne i fuld skærm under start."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:771
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:785
msgid "Print javascript alert and console messages to the console"
msgstr "Udskriv javascript alert og konsol beskeder til konsolen"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -13525,27 +13669,27 @@ msgstr "Find forrige forekomst"
msgid "Print eBook"
msgstr "Udskriv e-bog"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr "Skift versaltype"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr "Skift store/små bogstaver"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr "Træk til skaléring"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr "Vis"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr "Skjul"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr "Skift"
@@ -13700,16 +13844,16 @@ msgstr "Sender..."
msgid "Mail successfully sent"
msgstr "Mail blev succesfuldt sendt"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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."
@@ -13717,29 +13861,29 @@ msgstr ""
"Hvis du konfigurerer en ny hotmail-konto, skal du logge ind i den en gang "
"for at kan komme til at sende emails."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:150
+#: /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:152
+#: /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:159
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
msgid "Your %s &email address:"
msgstr "Din %s &email-adresse:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
msgid "Your %s &username:"
msgstr "Dit %s &brugernavn:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:162
msgid "Your %s &password:"
msgstr "Dit %s &kodeord:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:179
+#: /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 "
@@ -13749,22 +13893,35 @@ msgstr ""
"din %s email-adresse til tilladte email-adresser i din Amazon.com Kindle "
"forvaltningsside (management-side)."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:187
msgid "Setup"
msgstr "Konfiguration"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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 "Ugyldig konfiguration"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:203
msgid "You must set the From email address"
msgstr "Du skal angive Fra e-mail-adressen"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:209
-msgid "You must set the username and password for the mail server."
-msgstr "Du skal angive brugernavn og adgangskode til mailserveren"
+#: /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:"
@@ -13885,54 +14042,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr "Slå &indholdsserveren til"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr "markeret"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr "ja"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr "umarkeret"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr "nej"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr "i dag"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr "i går"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr "denne måned"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr "dage siden"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr "blank"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr "tom"
@@ -14956,11 +15113,11 @@ msgstr ""
"\n"
"For hjælp om de enkelte kommandoer: %%prog kommando --help\n"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr "Intet mærke blev angivet"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
@@ -14968,23 +15125,23 @@ msgstr ""
"Mærket må kun indeholde småbogstaver, cifre og bundstreger - og skal begynde "
"med et bogstav"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr "%sMiddel vurderingen er %3.1f"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr "Main/hjem/primær"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
Migrating old database to ebook library in %s
Flytter gammel database til e-bogsbibliotek i %s
Could not convert: %s
It is a DRMed book. You must "
#~ "first remove the DRM using third party tools."
@@ -18337,6 +18506,9 @@ msgstr "Download ikke CSS-stilark"
#~ "Glem ikke at indtaste dit gmail brugernavn og adgangskode. Du kan registrere "
#~ "dig til en gratis gmail-konto på http://gmail.com"
+#~ msgid "You must set the username and password for the mail server."
+#~ msgstr "Du skal angive brugernavn og adgangskode til mailserveren"
+
#~ msgid "Finish gmail setup"
#~ msgstr "Færdiggør gmail opsætning"
@@ -18453,6 +18625,9 @@ msgstr "Download ikke CSS-stilark"
#~ " Valg styrer hvordan indgange vises i den genererede katalog-output.\n"
#~ " "
+#~ msgid "No valid plugin found in "
+#~ msgstr "Intet gyldigt udvidelsesmodul fundet i "
+
#~ msgid "Choose plugin"
#~ msgstr "Vælg udvidelsesmodul"
@@ -18494,6 +18669,27 @@ msgstr "Download ikke CSS-stilark"
#~ msgid "The tags editor cannot be used if you have modified the tags"
#~ msgstr "Mærke-editor kan ikke anvendes hvis du har ændret mærkaterne"
+#~ msgid "replace"
+#~ msgstr "erstat"
+
+#~ msgid "ignore"
+#~ msgstr "ignorér"
+
+#~ msgid "ascii/LaTeX"
+#~ msgstr "ascii/LaTeX"
+
+#~ msgid "strict"
+#~ msgstr "striks"
+
+#~ msgid "mixed"
+#~ msgstr "blandet"
+
+#~ msgid "misc"
+#~ msgstr "forskelligt"
+
+#~ msgid "book"
+#~ msgstr "bog"
+
#~ msgid ""
#~ "If you use custom columns and they differ between libraries, you will have "
#~ "various problems. Best to ensure you have the same custom columns in each "
@@ -18741,6 +18937,9 @@ msgstr "Download ikke CSS-stilark"
#~ msgid "Communicate with the Kogan"
#~ msgstr "Kommunikér med Kogan"
+#~ msgid "backslashreplace"
+#~ msgstr "erstat omvendt skråstreg (\"\\\")"
+
#~ msgid "Sectionize Chapters (Use with care!)"
#~ msgstr "Sektionér kapitler (Anvendes med forsigtighed!)"
@@ -18768,6 +18967,9 @@ msgstr "Download ikke CSS-stilark"
#~ msgid "Tags to apply when adding a book:"
#~ msgstr "Mærker som skal anvendes, når en ny bog tilføjes:"
+#~ msgid "Customize the toolbar"
+#~ msgstr "Tilpas værktøjslinjen"
+
#~ msgid "Read metadata from &file contents rather than file name"
#~ msgstr "Læs metadata fra &filindhold i stedet for filnavn"
@@ -18784,6 +18986,9 @@ msgstr "Download ikke CSS-stilark"
#~ msgid "Test re&sult"
#~ msgstr "Test re&sultat"
+#~ msgid "&Split the toolbar into two toolbars"
+#~ msgstr "&Del værktøjslinjen i to værktøjslinjer"
+
#~ msgid "Apply function &after replace:"
#~ msgstr "Anvend funktion &efter erstat:"
diff --git a/src/calibre/translations/de.po b/src/calibre/translations/de.po
index 54e705e997..239c0d772b 100644
--- a/src/calibre/translations/de.po
+++ b/src/calibre/translations/de.po
@@ -7,33 +7,33 @@ msgid ""
msgstr ""
"Project-Id-Version: de\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-03-11 20:33+0000\n"
+"POT-Creation-Date: 2011-04-01 19:21+0000\n"
"PO-Revision-Date: 2011-03-04 14:25+0000\n"
"Last-Translator: miwie 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. oder or oder Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7926,49 +7986,61 @@ msgid ""
" 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 (the two lines "
-"marked\n"
-" 'fixable'). In the case of missing cover files, checking the "
-"fixable\n"
-" box and pushing this button will remove the cover mark from the\n"
-" database for all the files in that category. In the case of extra\n"
-" cover files, checking the fixable box and pushing this button will\n"
-" add the cover mark to the database for all the files in that\n"
-" category. 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. Set a regular expression pattern to use when trying to guess ebook "
@@ -10432,67 +10522,85 @@ msgid ""
"tooltips. Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's "
"for year. Click Find again to go to first match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by name"
msgstr "Nach Name sortieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by popularity"
msgstr "Nach Beliebtheit sortieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121
msgid "Sort by average rating"
msgstr "Nach Bewertungsdurchschnitt sortieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124
msgid "Set the sort order for entries in the Tag Browser"
msgstr "Reihenfolge der Einträge im Etiketten- Browser einstellen"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match all"
msgstr "Übereinstimmung mit allen"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match any"
msgstr "Übereinstimmung mit irgendeinem"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136
msgid ""
"When selecting multiple entries in the Tag Browser match any or all of them"
msgstr ""
@@ -13140,11 +13290,11 @@ msgstr ""
"entweder Bücher, bei denen mindestens ein Eintrag paßt, oder aber Bücher, "
"bei denen alle Einträge passen"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140
msgid "Manage &user categories"
msgstr "Ben&utzer-Kategorien verwalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143
msgid "Add your own categories to the Tag Browser"
msgstr "Eigene Kategorien zum Etiketten- Browser hinzufügen"
@@ -13210,11 +13360,11 @@ msgstr "Verbundenes Gerät ausw&erfen"
msgid "Calibre Quick Start Guide"
msgstr "Calibre Quick-Start-Guide"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305
msgid "Debug mode"
msgstr "Debug-Modus"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306
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 "
@@ -13223,35 +13373,24 @@ msgstr ""
"Sie haben Calibre im Debug-Modus gestartet. Beim verlassen des Programms "
"wird ein Debug-Log erstellt: %s Das Log wird automatisch angezeigt."
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr "Konvertierungsfehler"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr "Downloadschema ausgeschalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr "Misslungen"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-"ist das Ergebnis der Bemühungen von vielen Freiwilligen überall auf der "
-"Erde. Wenn Sie es nützlich finden, bitten wir um eine Spende zur "
-"Unterstützung der weiteren Entwicklung. Ihre Spende hilft, die Entwicklung "
-"von Calibre am Laufen zu halten."
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
"Es bestehen aktive Aufträge. Sind Sie sicher, dass sie es beenden wollen?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device! Migrating old database to ebook library in %s Migriere alte Datenbank zu eBook Bibliothek in %s 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 Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7359,68 +7419,80 @@ msgid ""
" 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 (the two lines "
-"marked\n"
-" 'fixable'). In the case of missing cover files, checking the "
-"fixable\n"
-" box and pushing this button will remove the cover mark from the\n"
-" database for all the files in that category. In the case of extra\n"
-" cover files, checking the fixable box and pushing this button will\n"
-" add the cover mark to the database for all the files in that\n"
-" category. 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. Set a regular expression pattern to use when trying to guess ebook "
@@ -9692,67 +9782,85 @@ msgid ""
"tooltips. Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's "
"for year. Click Find again to go to first match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by name"
msgstr "Ταξινόμηση κατά όνομα"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by popularity"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121
msgid "Sort by average rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124
msgid "Set the sort order for entries in the Tag Browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match all"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match any"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136
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:2083
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140
msgid "Manage &user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143
msgid "Add your own categories to the Tag Browser"
msgstr ""
@@ -12302,52 +12452,45 @@ msgstr ""
msgid "Calibre Quick Start Guide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305
msgid "Debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306
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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device! Migrating old database to ebook library in %s 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 Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7186,68 +7246,80 @@ msgid ""
" 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 (the two lines "
-"marked\n"
-" 'fixable'). In the case of missing cover files, checking the "
-"fixable\n"
-" box and pushing this button will remove the cover mark from the\n"
-" database for all the files in that category. In the case of extra\n"
-" cover files, checking the fixable box and pushing this button will\n"
-" add the cover mark to the database for all the files in that\n"
-" category. 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. Set a regular expression pattern to use when trying to guess ebook "
@@ -9519,67 +9609,85 @@ msgid ""
"tooltips. Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's "
"for year. Click Find again to go to first match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by popularity"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121
msgid "Sort by average rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124
msgid "Set the sort order for entries in the Tag Browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match all"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match any"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136
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:2083
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140
msgid "Manage &user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143
msgid "Add your own categories to the Tag Browser"
msgstr ""
@@ -12129,52 +12279,45 @@ msgstr ""
msgid "Calibre Quick Start Guide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305
msgid "Debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306
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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device! Migrating old database to ebook library in %s 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 or Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7274,68 +7334,80 @@ msgid ""
" 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 (the two lines "
-"marked\n"
-" 'fixable'). In the case of missing cover files, checking the "
-"fixable\n"
-" box and pushing this button will remove the cover mark from the\n"
-" database for all the files in that category. In the case of extra\n"
-" cover files, checking the fixable box and pushing this button will\n"
-" add the cover mark to the database for all the files in that\n"
-" category. 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. Set a regular expression pattern to use when trying to guess ebook "
@@ -9607,67 +9697,85 @@ msgid ""
"tooltips. Date format. Use 1-4 'd's for day, 1-4 'M's for month, and 2 or 4 'y's "
"for year. Click Find again to go to first match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2120
msgid "Sort by popularity"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2065
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2121
msgid "Sort by average rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2068
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2124
msgid "Set the sort order for entries in the Tag Browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match all"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2074
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2131
msgid "Match any"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2079
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2136
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:2083
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2140
msgid "Manage &user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2086
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2143
msgid "Add your own categories to the Tag Browser"
msgstr ""
@@ -12217,52 +12367,45 @@ msgstr ""
msgid "Calibre Quick Start Guide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:302
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:305
msgid "Debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:303
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306
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:495
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:505
msgid "Conversion Error"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:528
msgid "Recipe Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:544
msgid "Failed"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:571
-msgid ""
-"is the result of the efforts of many volunteers from all over the world. If "
-"you find it useful, please consider donating to support its development. "
-"Your donation helps keep calibre development going."
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:597
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:577
msgid "There are active jobs. Are you sure you want to quit?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:580
msgid ""
" is communicating with the device! Migrating old database to ebook library in %s 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 or To learn more advanced usage of XPath see the XPath Tutorial."
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:128
msgid "Browse by covers"
msgstr "Browse by covers"
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:158
msgid "Cover browser could not be loaded"
msgstr "Cover browser could not be loaded"
@@ -7396,11 +7456,11 @@ msgstr "Cover browser could not be loaded"
#: /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:293
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:557
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:598
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:621
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:680
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
@@ -7415,30 +7475,30 @@ msgid "Undefined"
msgstr "Undefined"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:637
msgid "star(s)"
msgstr "star(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:630
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
msgid "Unrated"
msgstr "Unrated"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:170
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:659
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:667
msgid "Set '%s' to today"
msgstr "Set '%s' to today"
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:172
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:661
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Clear '%s'"
msgstr "Clear '%s'"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:289
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:297
msgid " index:"
msgstr " index:"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:366
msgid ""
"The enumeration \"{0}\" contains an invalid value that will be set to the "
"default"
@@ -7446,23 +7506,23 @@ msgstr ""
"The enumeration \"{0}\" contains an invalid value that will be set to the "
"default"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:512
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:520
msgid "Apply changes"
msgstr "Apply changes"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:705
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:713
msgid "Remove series"
msgstr "Remove series"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:716
msgid "Automatically number books"
msgstr "Automatically number books"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:711
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:719
msgid "Force numbers to start with "
msgstr "Force numbers to start with "
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:782
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:790
msgid ""
"The enumeration \"{0}\" contains invalid values that will not appear in the "
"list"
@@ -7470,15 +7530,15 @@ msgstr ""
"The enumeration \"{0}\" contains invalid values that will not appear in the "
"list"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:826
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:834
msgid "Remove all tags"
msgstr "Remove all tags"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:846
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:854
msgid "tags to add"
msgstr "tags to add"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:852
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:861
msgid "tags to remove"
msgstr "tags to remove"
@@ -7571,21 +7631,21 @@ msgstr "Error"
msgid "Error communicating with device"
msgstr "Error communicating with device"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156
-#: /home/kovid/work/calibre/src/calibre/gui2/email.py:299
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:307
msgid "No suitable formats"
msgstr "No suitable formats"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:644
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:647
msgid "Select folder to open as device"
msgstr "Select folder to open as device"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:695
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:698
msgid "Error talking to device"
msgstr "Error talking to device"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696
+#: /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."
@@ -7593,67 +7653,67 @@ msgstr ""
"There was a temporary error talking to the device. Please unplug and "
"reconnect the device and or reboot."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:739
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
msgid "Device: "
msgstr "Device: "
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:741
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
msgid " detected."
msgstr " detected."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:839
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842
msgid "selected to send"
msgstr "selected to send"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:858
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
msgid "%i of %i Books"
msgstr "%i of %i Books"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864
msgid "0 of %i Books"
msgstr "0 of %i Books"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "Choose format to send to device"
msgstr "Choose format to send to device"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:870
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873
msgid "No device"
msgstr "No device"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
msgid "Cannot send: No device is connected"
msgstr "Cannot send: No device is connected"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
msgid "No card"
msgstr "No card"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
msgid "Cannot send: Device has no storage card"
msgstr "Cannot send: Device has no storage card"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:935
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1018
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:943
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1026
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1160
msgid "Auto convert the following books before uploading to the device?"
msgstr "Auto convert the following books before uploading to the device?"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:964
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:972
msgid "Sending catalogs to device."
msgstr "Sending catalogues to device."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1063
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1073
msgid "Sending news to device."
msgstr "Sending news to device."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1117
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1127
msgid "Sending books to device."
msgstr "Sending books to device."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1157
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167
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."
@@ -7661,11 +7721,11 @@ msgstr ""
"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."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1229
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1239
msgid "No space on device"
msgstr "No space on device"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1230
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1240
msgid ""
" Cannot upload books to device there is no more free space available "
msgstr ""
@@ -7876,115 +7936,61 @@ msgid ""
" 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 (the two lines "
-"marked\n"
-" 'fixable'). In the case of missing cover files, checking the "
-"fixable\n"
-" box and pushing this button will remove the cover mark from the\n"
-" database for all the files in that category. In the case of extra\n"
-" cover files, checking the fixable box and pushing this button will\n"
-" add the cover mark to the database for all the files in that\n"
-" category. 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. 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 (the two lines "
-"marked\n"
-" 'fixable'). In the case of missing cover files, checking the "
-"fixable\n"
-" box and pushing this button will remove the cover mark from the\n"
-" database for all the files in that category. In the case of extra\n"
-" cover files, checking the fixable box and pushing this button will\n"
-" add the cover mark to the database for all the files in that\n"
-" category. Set a regular expression pattern to use when trying to guess ebook "
@@ -10439,67 +10463,85 @@ msgstr ""
"group names for the various metadata entries are documented in "
"tooltips. or
tags. The tags are "
"renumbered to prevent splitting in the middle of chapter headings."
@@ -2258,53 +2302,53 @@ msgstr ""
"Sucht aufeinanderfolgende
oder
Tags. Um Trennungen in "
"Kapitelüberschriften zu verhinden, werden die Tags neu nummeriert."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:553
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:564
msgid "Search pattern (regular expression) to be replaced with sr1-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:558
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:569
msgid "Replacement to replace the text found with sr1-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:562
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:573
msgid "Search pattern (regular expression) to be replaced with sr2-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:567
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:578
msgid "Replacement to replace the text found with sr2-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:571
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:582
msgid "Search pattern (regular expression) to be replaced with sr3-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:587
msgid "Replacement to replace the text found with sr3-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:678
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:689
msgid "Could not find an ebook inside the archive"
msgstr "Konnte kein eBook im Archiv finden"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:736
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:747
msgid "Values of series index and rating must be numbers. Ignoring"
msgstr ""
"Die Werte von Reihen und Bewertungen müssen in Zahlen angegeben werden. "
"Ignorieren"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:743
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:754
msgid "Failed to parse date/time"
msgstr "Analyse von Datum/Zeit schlug fehl"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:898
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:909
msgid "Converting input to HTML..."
msgstr "Eingabe zu HTML konvertieren ..."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:925
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:936
msgid "Running transforms on ebook..."
msgstr "Veränderungen am eBook durchführen ..."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1015
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1032
msgid "Creating"
msgstr "Erstellen"
@@ -2463,7 +2507,7 @@ msgstr "Start"
msgid "Do not insert a Table of Contents at the beginning of the book."
msgstr "Kein Inhaltsverzeichnis am Anfang des Buches einfügen."
-#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:22
+#: /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 "
@@ -2482,6 +2526,10 @@ msgstr ""
"\"Inhaltsverzeichnis\"- Einstellungen an (aktivieren Sie \"Verwendung des "
"automatisch erstellen Inhaltsverzeichnisses erzwingen\")."
+#: /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 "
@@ -2892,105 +2940,105 @@ msgstr ""
msgid "TEMPLATE ERROR"
msgstr "Vorlagenfehler"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "No"
msgstr "Nein"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "Yes"
msgstr "Ja"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:658
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:675
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:993
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:426
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1018
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:331
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:576
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:574
msgid "Title"
msgstr "Titel"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:659
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:676
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:994
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:431
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019
msgid "Author(s)"
msgstr "Autor(en)"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:660
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:677
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
msgid "Publisher"
msgstr "Herausgeber"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:661
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:678
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49
msgid "Producer"
msgstr "Produzent"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:662
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:679
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:247
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:129
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:79
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:389
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1200
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1206
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:211
msgid "Comments"
msgstr "Bemerkung"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:664
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:681
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:31
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:377
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1196
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1202
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:753
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:761
msgid "Tags"
msgstr "Etiketten (Tags)"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:666
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:683
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1211
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:114
msgid "Series"
msgstr "Reihe"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:667
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:684
msgid "Language"
msgstr "Sprache"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:669
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1188
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:686
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194
msgid "Timestamp"
msgstr "Zeitstempel"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:671
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:688
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:271
msgid "Published"
msgstr "Veröffentlicht"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:673
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:690
msgid "Rights"
msgstr "Rechte"
@@ -3167,7 +3215,7 @@ msgid "Convert comments downloaded from %s to plain text"
msgstr "Konvertiere von %s heruntergeladene Komentare in Klartext"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:145
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:157
msgid "Downloads metadata from Google Books"
msgstr "Lädt Metadaten von Google Books"
@@ -3321,7 +3369,7 @@ msgstr "Der Titel des gesuchten Buches."
msgid "The publisher of the book to search for."
msgstr "Der Herausgeber des gesuchten Buches."
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64
msgid ""
"\n"
"%prog [options] ISBN\n"
@@ -3408,19 +3456,43 @@ msgstr "Es wurde ein Cover für dieses Buch gefunden"
msgid "Cover saved to file "
msgstr "Cover gespeichert "
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1346
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1484
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1356
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
msgid "Cover"
msgstr "Umschlagbild"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:16
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:280
msgid "Downloads metadata from Amazon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:22
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:287
+msgid "US"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:288
+msgid "France"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:289
+msgid "Germany"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:290
+msgid "UK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:375
+msgid "Amazon timed out. Try again later."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:94
msgid "Metadata source"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/openlibrary.py:15
+msgid "Downloads metadata from The Open Library"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22
msgid "Modify images to meet Palm device size limitations."
msgstr "Bilder auf die Größenlimitation von Palm-Geräten einstellen."
@@ -3468,70 +3540,70 @@ msgstr "Alle Artikel"
msgid "This is an Amazon Topaz book. It cannot be processed."
msgstr "Dies ist ein Amazon Topaz-Buch. Es kann nicht verarbeitet werden."
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1485
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
msgid "Title Page"
msgstr "Titelseite"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1486
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
#: /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 "Inhaltsverzeichnis"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1487
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
msgid "Index"
msgstr "Index"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1488
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
msgid "Glossary"
msgstr "Glossar"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1489
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
msgid "Acknowledgements"
msgstr "Danksagung"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1490
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
msgid "Bibliography"
msgstr "Literaturverzeichnis"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
msgid "Colophon"
msgstr "Schlussschrift"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
msgid "Copyright"
msgstr "Copyright"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
msgid "Dedication"
msgstr "Widmung"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1501
msgid "Epigraph"
msgstr "Epigraph"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1502
msgid "Foreword"
msgstr "Vorwort"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1503
msgid "List of Illustrations"
msgstr "Abbildungsverzeichnis"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1504
msgid "List of Tables"
msgstr "Tabellenverzeichnis"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1505
msgid "Notes"
msgstr "Anmerkungen"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1506
msgid "Preface"
msgstr "Vorwort"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1507
msgid "Main Text"
msgstr "Haupttext"
@@ -3551,9 +3623,9 @@ msgid "HTML TOC generation options."
msgstr "Einstellungen zur Erstellung von HTML-Inhaltsverzeichnissen."
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:751
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:759
msgid "Rating"
msgstr "Bewertung"
@@ -3757,6 +3829,7 @@ msgid "Author"
msgstr "Autor"
#: /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 "Thema"
@@ -3915,7 +3988,7 @@ msgstr ""
msgid "Table of Contents:"
msgstr "Inhaltsverzeichnis:"
-#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:271
+#: /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"
@@ -4081,74 +4154,78 @@ msgid ""
"are always removed with plain text output."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:72
msgid "Send file to storage card instead of main memory by default"
msgstr ""
"Datei auf die Speicherkarte anstatt in den Hauptspeicher des Gerätes "
"(Voreinstellung) senden"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:74
msgid "Confirm before deleting"
msgstr "Bestätigung vor dem Löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:76
msgid "Main window geometry"
msgstr "Aufteilung des Hauptfensters"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:77
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:78
msgid "Notify when a new version is available"
msgstr "Benachrichtigen, wenn eine neue Version verfügbar ist"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:80
msgid "Use Roman numerals for series number"
msgstr "Benutze römische Ziffern für Reihennummerierung"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:82
msgid "Sort tags list by name, popularity, or rating"
msgstr "Etikettenliste nach Name, Beliebtheit oder Bewertung"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:84
+msgid "Match tags by any or all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:86
msgid "Number of covers to show in the cover browsing mode"
msgstr ""
"Anzahl der Umschlagbilder, die im Cover-Ansicht Modus angezeit werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:88
msgid "Defaults for conversion to LRF"
msgstr "Voreinstellungen für Konvertierung zu LRF"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
msgid "Options for the LRF ebook viewer"
msgstr "Optionen für den LRF eBook Viewer"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
msgid "Formats that are viewed using the internal viewer"
msgstr "Formate, die mithilfe des internen Viewers angesehen werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
msgid "Columns to be displayed in the book list"
msgstr "Spalten, die in der Liste der Bücher angezeigt werden sollen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:96
msgid "Automatically launch content server on application startup"
msgstr "Content Server automatisch beim Aufrufen von Calibre starten"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
msgid "Oldest news kept in database"
msgstr "Älteste in der Datenbank gespeicherte Nachrichten"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:98
msgid "Show system tray icon"
msgstr "Symbol im Systembereich der Kontrollleiste anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:100
msgid "Upload downloaded news to device"
msgstr "Geladene Nachrichten auf das Gerät übertragen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:102
msgid "Delete books from library after uploading to device"
msgstr "Bücher nach der Übertragung auf das Gerät aus der Bibliothek löschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:104
msgid ""
"Show the cover flow in a separate window instead of in the main calibre "
"window"
@@ -4156,70 +4233,70 @@ msgstr ""
"Zeige Cover-Ansicht in einem eigenen Fenster anstatt im Hauptfenster von "
"Calibre"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:106
msgid "Disable notifications from the system tray icon"
msgstr ""
"Benachrichtigungen aus dem Systembereich der Kontrollleiste deaktivieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:108
msgid "Default action to perform when send to device button is clicked"
msgstr ""
"Voreingestellte Übertragungsart beim Verwenden der \"An Reader übertragen\" "
"Schaltfläche"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113
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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:116
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:131
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:134
msgid "Maximum number of waiting worker processes"
msgstr "Maximale Anzahl der Arbeitsprozesse in der Warteschlange"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136
msgid "Download social metadata (tags/rating/etc.)"
msgstr "Soziale Metadaten (Etikettierung/Bewertung/etc.) laden"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138
msgid "Overwrite author and title with new metadata"
msgstr "Autor und Titel mit neuen Metadaten überschreiben"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:101
msgid "Automatically download the cover, if available"
msgstr "Läd das Cover, wenn möglich, automatisch herunter"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:142
msgid "Limit max simultaneous jobs to number of CPUs"
msgstr ""
"Maximale Anzahl gleichzeitiger Aufträge auf die Anzahl der CPUs beschränken"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144
msgid "The layout of the user interface"
msgstr "Das Aussehen der Benutzeroberfläche"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:146
msgid "Show the average rating per item indication in the tag browser"
msgstr ""
"Durchschnittsbewertungsindikator pro Einheit im Etikettenbrowser anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:148
msgid "Disable UI animations"
msgstr "Keine Benutzeroberflächen-Animationen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153
msgid "tag browser categories not to display"
msgstr "Etiketten-Browser Kategorien nicht anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:419
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:423
msgid "Choose Files"
msgstr "Dateien wählen"
@@ -4391,8 +4468,8 @@ msgstr "Zur Bibliothek hinzufügen"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:371
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:28
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:138
msgid "No book selected"
msgstr "Kein Buch ausgewählt"
@@ -4437,8 +4514,8 @@ msgstr "Nur aus der Hauptbibliothek erstellte Benutzeranmerkungen"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92
msgid "No books selected"
msgstr "Keine Bücher ausgewählt"
@@ -4498,8 +4575,8 @@ msgstr "Wählen Sie das Ziel für %s.%s"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:167
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:126
+#: /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 "%d Bücher"
@@ -4592,6 +4669,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:430
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:274
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Sicher?"
@@ -4638,8 +4716,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:689
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:963
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:972
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:276
@@ -4675,7 +4753,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
#: /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:782
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:789
msgid "Not allowed"
msgstr "Das ist nicht gestattet"
@@ -4710,7 +4788,7 @@ msgid "Bulk convert"
msgstr "Auf einmal konvertieren"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:86
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:507
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517
msgid "Cannot convert"
msgstr "Konvertierung nicht möglich"
@@ -4718,7 +4796,7 @@ msgstr "Konvertierung nicht möglich"
msgid "Starting conversion of %d book(s)"
msgstr "Starte Konvertierung von %d Büchern"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:171
msgid "Empty output file, probably the conversion process crashed"
msgstr "Leere Ausgabedatei, eventuell ist der Umwandlungsprozess abgestürzt"
@@ -4909,7 +4987,7 @@ msgid "Stop Content Server"
msgstr "Content Server beenden"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:96
msgid "Email to"
msgstr "eMail an"
@@ -4917,32 +4995,32 @@ msgstr "eMail an"
msgid "Email to and delete from library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:89
+#: /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:104
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:105
msgid "Setup email based sharing of books"
msgstr "Richtet den Email- Versand von Büchern ein"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "D"
msgstr "G"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "Send to device"
msgstr "An Reader übertragen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:142
msgid "Connect/share"
msgstr "Verbinden/Teilen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:84
msgid "Stopping"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:176
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85
msgid "Stopping server, this could take upto a minute, please wait..."
msgstr ""
@@ -5031,20 +5109,20 @@ msgid "Downloading {0} for {1} book(s)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:189
msgid "Cannot edit metadata"
msgstr "Kann Metadaten nicht bearbeiten"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:224
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:229
msgid "Cannot merge books"
msgstr "Konnte Bücher nicht zusammenfügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:230
msgid "At least two books must be selected for merging"
msgstr "Es müssen wenigstens zwei Bücher zum Zusammenfügen ausgewählt werden"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:233
msgid ""
"You are about to merge more than 5 books. Are you sure you want to "
"proceed?"
@@ -5052,7 +5130,7 @@ msgstr ""
"Sie versuchen mehr als 5 Bücher zusammenzufügen. Wollen Sie damit "
"wirklich fortfahren?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:239
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:241
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -5065,7 +5143,7 @@ msgstr ""
"gelöscht oder verändert.
Bestätigen Sie bitte, dass Sie fortfahren "
"möchten."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:253
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 "
@@ -5077,7 +5155,7 @@ msgid ""
"calibre library.
Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:269
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -5088,19 +5166,19 @@ msgid ""
"Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:19
msgid "F"
msgstr "F"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:19
msgid "Fetch news"
msgstr "Nachrichten abrufen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:52
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:54
msgid "Fetching news from "
msgstr "Rufe Nachrichten ab von "
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:83
msgid " fetched."
msgstr " abgerufen."
@@ -5165,7 +5243,7 @@ msgid "Ctrl+P"
msgstr "Ctrl+P"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:206
msgid "Run welcome wizard"
msgstr "Willkommens-Assistenten ausführen"
@@ -5173,11 +5251,11 @@ msgstr "Willkommens-Assistenten ausführen"
msgid "Restart in debug mode"
msgstr "Neustart im Debug-Modus"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:40
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
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:45
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr "Konfiguration erst nach einem Neustart von Calibre möglich."
@@ -5256,7 +5334,7 @@ msgstr ""
"Klicken Sie auf die Schaltfläche Details zeigen, um zu sehen, welche es gibt."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:758
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:766
msgid "Show book details"
msgstr "Zeige Buchdetails"
@@ -5344,26 +5422,30 @@ msgstr "Vorschau"
msgid "View specific format"
msgstr "Spezielles Format ansehen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:38
+msgid "Read a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:181
msgid "Cannot view"
msgstr "Ansehen nicht möglich"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:119
msgid "Format unavailable"
msgstr "Format nicht verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:106
msgid "Selected books have no formats"
msgstr "Ausgwählte Bücher haben kein Format"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:108
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:127
msgid "Choose the format to view"
msgstr "Format zur Vorschau wählen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
msgid ""
"Not all the selected books were available in the %s format. You should "
"convert them first."
@@ -5371,11 +5453,11 @@ msgstr ""
"Nicht alle ausgewählten Bücher sind im %s Format verfügbar. Sie sollten "
"diese zuerst umwandeln."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:127
msgid "Multiple Books Selected"
msgstr "Mehrere Bücher ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:128
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 "
@@ -5387,11 +5469,11 @@ msgstr ""
"Rechners haben. Einmal gestartet kann der Prozess nicht beendet werden, "
"bevor er abgeschlossen ist. Möchten Sie fortfahren?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:137
msgid "Cannot open folder"
msgstr "Konnte Verzeichnis nicht öffnen"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:182
msgid "%s has no available formats."
msgstr "%s hat keine verfügbaren Formate."
@@ -5416,7 +5498,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:838
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:841
msgid "No books"
msgstr "Keine Bücher"
@@ -5569,8 +5651,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:173
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:175
@@ -5636,8 +5719,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:160
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:384
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1186
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1192
msgid "Path"
msgstr "Pfad"
@@ -5647,17 +5730,17 @@ msgstr "Pfad"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:153
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:139
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /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 "Formate"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:29
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:997
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1189
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
msgid "Collections"
msgstr "Sammlungen"
@@ -5667,25 +5750,25 @@ msgid "Click to open"
msgstr "Zum Öffnen klicken"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:57
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1199
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:375
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:381
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1201
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
#: /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/widgets.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:350
msgid "None"
msgstr "Keine"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:158
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:243
msgid "Paste Cover"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:244
msgid "Copy Cover"
msgstr ""
@@ -5735,7 +5818,7 @@ msgstr "Einstellungen für"
msgid "output"
msgstr "Ausgabe"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:42
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:295
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:32
@@ -5743,7 +5826,7 @@ msgstr "Ausgabe"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:33
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:38
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:44
#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:112
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:120
@@ -5758,7 +5841,7 @@ msgstr "Ausgabe"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:33
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:42
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:56
+#: /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
@@ -5766,14 +5849,14 @@ msgstr "Ausgabe"
#: /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
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:130
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:139
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
@@ -5789,68 +5872,36 @@ msgstr "Ausgabe"
msgid "Form"
msgstr "Art"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:78
msgid "Bib file encoding:"
msgstr "Kodierung der Bib-Datei:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:79
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:43
msgid "Fields to include in output:"
msgstr "Felder, die in der Ausgabe erscheinen sollen:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:92
-msgid "ascii/LaTeX"
-msgstr "ascii/LaTeX"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:80
msgid "Encoding configuration (change if you have errors) :"
msgstr "Konfiguration der Kodierung (bei Fehlern ändern):"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:94
-msgid "strict"
-msgstr "streng"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:95
-msgid "replace"
-msgstr "ersetzen"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:96
-msgid "ignore"
-msgstr "ignorieren"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:97
-msgid "backslashreplace"
-msgstr "Backslash-Ersetzen"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:81
msgid "BibTeX entry type:"
msgstr "BibTeX-Eingabetyp:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:99
-msgid "mixed"
-msgstr "gemischt"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:100
-msgid "misc"
-msgstr "Verschiedenes"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:101
-msgid "book"
-msgstr "Buch"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:82
msgid "Create a citation tag?"
msgstr "Zitier- Tag erstellen?"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:83
msgid "Add files path with formats?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:84
msgid "Expression to form the BibTeX citation tag:"
msgstr "Ausdruck zum Formen des BibTeX Zitier- Tags:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:85
msgid ""
"Some explanation about this template:\n"
" -The fields availables are 'author_sort', 'authors', 'id',\n"
@@ -6140,6 +6191,7 @@ 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:139
msgid "Normal"
@@ -6391,10 +6443,14 @@ msgstr "Kein Inhal&tsverzeichnis am Anfang des Buches einfügen."
msgid "FB2 Output"
msgstr "FB2-Ausgabe"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:39
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:45
msgid "Sectionize:"
msgstr "Sektionieren:"
+#: /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 "Schriftskalierungs-Assistent"
@@ -7015,7 +7071,7 @@ msgid "Regex:"
msgstr "Regex:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
msgid "Test"
msgstr "Test"
@@ -7047,25 +7103,25 @@ msgstr "&Nächstes"
msgid "Preview"
msgstr "Vorschau"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:15
+#: /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:28
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:34
+#: /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:71
+#: /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 "Ungültiger regulärer Ausdruck"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:72
+#: /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 "Ungültiger regulärer Ausdruck: %s"
@@ -7175,19 +7231,19 @@ msgstr "Ungültiger XPath"
msgid "The XPath expression %s is invalid."
msgstr "Der XPath Ausdruck %s ist ungültig."
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:60
msgid "Chapter &mark:"
msgstr "Kapitel&markierung:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:61
msgid "Remove first &image"
msgstr "Erstes B&ild entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:62
msgid "Insert &metadata as page at start of book"
msgstr "&Metadaten als erste Seite des Buchs einfügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:60
+#: /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 "
@@ -7195,6 +7251,10 @@ msgid ""
"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"
@@ -7431,11 +7491,11 @@ msgstr ""
"von XPath finden Sie im XPath Tutorial."
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:118
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:128
msgid "Browse by covers"
msgstr "Umschlagbilder durchsuchen"
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:158
msgid "Cover browser could not be loaded"
msgstr "Cover-Browser konnte nicht geladen werden"
@@ -7444,11 +7504,11 @@ msgstr "Cover-Browser konnte nicht geladen werden"
#: /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:293
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:557
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:598
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:621
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:680
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
@@ -7463,30 +7523,30 @@ 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:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:637
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:630
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
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:659
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:667
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:661
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Clear '%s'"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:289
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:297
msgid " index:"
msgstr " Index:"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:366
msgid ""
"The enumeration \"{0}\" contains an invalid value that will be set to the "
"default"
@@ -7494,23 +7554,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:512
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:520
msgid "Apply changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:705
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:713
msgid "Remove series"
msgstr "Reihen entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:716
msgid "Automatically number books"
msgstr "Bücher automatisch nummerieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:711
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:719
msgid "Force numbers to start with "
msgstr "Start der Nummerierung erzwingen bei "
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:782
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:790
msgid ""
"The enumeration \"{0}\" contains invalid values that will not appear in the "
"list"
@@ -7518,15 +7578,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:826
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:834
msgid "Remove all tags"
msgstr "Alle Etiketten entfernen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:846
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:854
msgid "tags to add"
msgstr "Etiketten hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:852
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:861
msgid "tags to remove"
msgstr "Etiketten entfernen"
@@ -7619,21 +7679,21 @@ msgstr "Fehler"
msgid "Error communicating with device"
msgstr "Fehler bei der Kommunikation mit dem Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156
-#: /home/kovid/work/calibre/src/calibre/gui2/email.py:299
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:307
msgid "No suitable formats"
msgstr "Keine geeigneten Formate"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:644
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:647
msgid "Select folder to open as device"
msgstr "Verzeichnis wählen, das als Gerät geöffnet werden soll"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:695
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:698
msgid "Error talking to device"
msgstr "Fehler in der Kommunikation zum Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696
+#: /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."
@@ -7641,68 +7701,68 @@ msgstr ""
"Es trat ein Fehler in der Kommunikation mit dem Gerät auf. Bitte entfernen "
"und schließen Sie das Gerät wieder an und - oder starten Sie neu."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:739
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
msgid "Device: "
msgstr "Gerät: "
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:741
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
msgid " detected."
msgstr " gefunden."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:839
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842
msgid "selected to send"
msgstr "zum Übertragen ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:858
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
msgid "%i of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864
msgid "0 of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
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:870
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873
msgid "No device"
msgstr "Kein Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
msgid "Cannot send: No device is connected"
msgstr "Übertragung schlug fehl: Kein Gerät verbunden"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
msgid "No card"
msgstr "Keine Speicherkarte"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
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:935
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1018
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:943
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1026
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1160
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:964
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:972
msgid "Sending catalogs to device."
msgstr "Sende Kataloge ans Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1063
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1073
msgid "Sending news to device."
msgstr "Sende Nachrichten an das Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1117
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1127
msgid "Sending books to device."
msgstr "Sende Bücher an das Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1157
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167
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."
@@ -7711,11 +7771,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:1229
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1239
msgid "No space on device"
msgstr "Gerätespeicher voll"
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1230
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1240
msgid ""
"
"
msgstr "Doppelklick ermöglicht Bearbeitung
"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:156
msgid "Hide column %s"
msgstr "Spalte %s ausblenden"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
msgid "Sort on %s"
msgstr "Sortieren nach %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:162
msgid "Ascending"
msgstr "aufsteigend"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165
msgid "Descending"
msgstr "absteigend"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:177
msgid "Change text alignment for %s"
msgstr "Textausrichtung ändern für %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Left"
msgstr "Links"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Right"
msgstr "Rechts"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:180
msgid "Center"
msgstr "Zentriert"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:199
msgid "Show column"
msgstr "Spalte anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:211
msgid "Restore default layout"
msgstr "Voreingestelltes Layout wiederherstellen"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:783
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:790
msgid ""
"Dropping onto a device is not supported. First add the book to the calibre "
"library."
@@ -10823,7 +10931,7 @@ msgid "No matches for the search phrase %s were found."
msgstr "Keine Treffer für die Suchworte %s gefunden."
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:483
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:503
msgid "No matches found"
msgstr "Keine Treffer gefunden"
@@ -10840,12 +10948,12 @@ msgid "LRF Viewer toolbar"
msgstr "LRF Viewer Symbolleiste"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:131
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:539
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:558
msgid "Next Page"
msgstr "Nächste Seite"
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main_ui.py:132
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:540
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:559
msgid "Previous Page"
msgstr "Vorherige Seite"
@@ -11004,7 +11112,7 @@ msgstr "Start nicht möglich "
msgid "%s is already running."
msgstr "%s ist schon gestartet."
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:20
+#: /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."
@@ -11013,15 +11121,15 @@ msgstr ""
"stderr). Hilfreich bei Fenstern in denen GUI Programme nicht über Output-"
"Streams verfügen."
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:113
msgid "&Preferences"
msgstr "&Einstellungen"
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:114
msgid "&Quit"
msgstr "Be&enden"
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:138
msgid "Unhandled exception"
msgstr ""
@@ -11096,7 +11204,7 @@ msgid "%s %s for: %s"
msgstr "%s %s für: %s"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:291
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:163
msgid "Done"
msgstr "Fertig"
@@ -11105,7 +11213,7 @@ msgid "Successfully downloaded metadata for %d out of %d books"
msgstr "Erfolgreich Metadaten heruntergeladen für %d von %d Büchern"
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:294
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:757
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:765
msgid "Details"
msgstr "Einzelheiten"
@@ -11234,17 +11342,22 @@ msgstr ""
msgid "&Configure metadata from file name"
msgstr "Metadaten aus dem Dateinamen &konfigurieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
-msgid "High"
-msgstr "Hoch"
-
+#: /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:141
msgid "Low"
msgstr "Niedrig"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
+msgid "High"
+msgstr "Hoch"
+
+#: /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:164
msgid "Confirmation dialogs have all been reset"
msgstr "Alle Bestätigungsdialoge wurden zurückgesetzt"
@@ -11374,7 +11487,7 @@ msgstr ""
msgid "Add &custom column"
msgstr "Benutzerdefinierte &Spalte hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion.py:39
+#: /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."
@@ -11418,7 +11531,7 @@ msgstr "Bewertungen, angezeigt durch Sterne"
#: /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:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:140
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:145
msgid "Yes/No"
msgstr "Ja/Nein"
@@ -11436,10 +11549,14 @@ msgid "Quick create:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149
msgid "Modified Date"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
+msgid "People's names"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
msgid "Number"
msgstr "Nummer"
@@ -11465,23 +11582,27 @@ msgstr "Es wurde keine Spalte ausgewählt"
msgid "Selected column is not a user-defined column"
msgstr "Die gewählte Spalte ist keine benutzerdefinierte Spalte"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:146
msgid "My Tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:147
msgid "My Series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148
msgid "My Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150
+msgid "People"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:179
msgid "No lookup name was provided"
msgstr "Es wurde kein Suchname angegeben"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:183
msgid ""
"The lookup name must contain only lower case letters, digits and "
"underscores, and start with a letter"
@@ -11489,7 +11610,7 @@ msgstr ""
"Der Suchname darf nur Kleinbuchstaben, Zahlen und Unterstriche enthalten und "
"muß mit einem Buchstaben anfangen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:186
msgid ""
"Lookup names cannot end with _index, because these names are reserved for "
"the index of a series column."
@@ -11497,45 +11618,45 @@ msgstr ""
"Suchnamen dürfen nicht mit _index enden, da diese Namen für die Indizes von "
"Serien- Spalten reserviert sind."
-#: /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:196
msgid "No column heading was provided"
msgstr "Es wurde keine Spaltenüberschrift angegeben"
-#: /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:206
msgid "The lookup name %s is already used"
msgstr "Der Suchname %s wird schon verwendet"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:218
msgid "The heading %s is already used"
msgstr "Die Überschrift %s wird schon verwendet"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:221
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
msgid "You must enter a template for composite columns"
msgstr "Sie müssen eine Vorlage für zusammengesetzte Spalten eingeben"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:238
msgid "You must enter at least one value for enumeration columns"
msgstr "Sie müssen mindestens einen Wert für die Aufzählungsspalten angeben"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:233
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:242
msgid "You cannot provide the empty value, as it is included by default"
msgstr ""
"Sie können nicht ein leeres Feld als Wert auswählen, da es standardmäßig "
"bereits enthalten ist."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:237
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:246
msgid "The value \"{0}\" is in the list more than once"
msgstr "Der Wert \"{0}\" ist in der Liste mehrfach vorhanden"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:184
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:190
msgid "&Lookup name"
msgstr "&Suchname"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:185
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:191
msgid "Column &heading"
msgstr "Spaltenübersc&hrift"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:186
+#: /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."
@@ -11543,26 +11664,22 @@ msgstr ""
"Zur Verwendung für das Durchsuchen der Spalte. Darf nur Zahlen und "
"kleingeschriebene Buchstaben enthalten."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:187
+#: /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 ""
"Spaltenüberschrift in der Bibliotheksansicht und Kategoriename im Etiketten-"
"Browser"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:188
+#: /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:189
+#: /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 "Art der Information, die in der Spalte enthalten ist."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column_ui.py:190
-msgid "Show checkmarks"
-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: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 "
@@ -11570,7 +11687,20 @@ msgid ""
"Everything else will show nothing."
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: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 ""
"
to this email "
"address (provided it is in one of the listed formats)."
@@ -11704,7 +11849,7 @@ msgstr ""
"Adresse versendet (vorausgesetzt sie entspricht einem der angegebenen "
"Formate)"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:115
msgid "new email address"
msgstr "Neue eMail-Adresse"
@@ -11716,95 +11861,95 @@ msgstr "Schmal"
msgid "Wide"
msgstr "Breit"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Medium"
msgstr "Mittel"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Small"
msgstr "Klein"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
msgid "Large"
msgstr "Groß"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Always"
msgstr "Immer"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Automatic"
msgstr "Automatisch"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
msgid "Never"
msgstr "Nie"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "By first letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
msgid "Partitioned"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:140
msgid "User Interface &layout (needs restart):"
msgstr "Aussehen der Benutzeroberf&läche (Neustart erforderlich):"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:141
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
"A&nzahl der anzuzeigenden Umschlagbilder in der Cover-Ansicht (erfordert "
"Neustart):"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
msgid "Choose &language (requires restart):"
msgstr "Sprache wäh&len (erfordert Neustart):"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
msgid "Show &average ratings in the tags browser"
msgstr "Zeige durchschnittliche &Bewertungen im Etiketten-Browser"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
msgid "Disable all animations. Useful if you have a slow/old computer."
msgstr ""
"Alle Animationen ausschalten. Hilfreich bei langsamen/alten Rechnern."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:148
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
msgid "Disable &animations"
msgstr "Animationen &ausschalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
msgid "Enable system &tray icon (needs restart)"
msgstr ""
"Symbol im Sys&tembereich der Kontrollleiste aktivieren (erfordert Neustart)"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
msgid "Show &splash screen at startup"
msgstr "Spla&sh-Screen beim Starten anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:148
msgid "Disable ¬ifications in system tray"
msgstr "&Benachrichtigungen im Systemtray deaktivieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
msgid "Use &Roman numerals for series"
msgstr "&Römische Zahlen für Serien verwenden"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
msgid "Show cover &browser in a separate window (needs restart)"
msgstr "Zeige Cover-Ansicht in einem eigenen Fenster (erfordert Neustart)"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
msgid "Tags browser category &partitioning method:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
msgid ""
"Choose how tag browser subcategories are displayed when\n"
"there are more items than the limit. Select by first\n"
@@ -11813,22 +11958,22 @@ msgid ""
"if you never want subcategories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:157
msgid "&Collapse when more items than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:158
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:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
msgid "Categories with &hierarchical items:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
msgid ""
"A comma-separated list of columns in which items containing\n"
"periods are displayed in the tag browser trees. For example, if\n"
@@ -11838,52 +11983,48 @@ 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:170
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:167
msgid "&Toolbar"
msgstr "Symbolleis&te"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:168
msgid "&Icon size:"
msgstr "&Symbolgröße:"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:169
msgid "Show &text under icons:"
msgstr "&Text unter Symbolen anzeigen:"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:173
-msgid "&Split the toolbar into two toolbars"
-msgstr "&Werkzeugleiste in zwei Leisten teilen"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:170
msgid "Interface font:"
msgstr "Interface-Schriftart:"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
msgid "Change &font (needs restart)"
msgstr "Ändere &font (Neustart erforderlich)"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:228
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks_ui.py:96
msgid "&Apply"
msgstr "&Anwenden"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:235
msgid "Restore &defaults"
msgstr "Voreinstellungen wie&derherstellen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:236
msgid "Save changes"
msgstr "Änderungen speichern"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:237
msgid "Cancel and return to overview"
msgstr "Abbrechen und zur Übersicht zurückkehren"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:293
msgid "Restoring to defaults not supported for"
msgstr "Voreinstellungen wiederherstellen wird nicht unterstützt für"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:328
msgid ""
"Some of the changes you made require a restart. Please restart calibre as "
"soon as possible."
@@ -11891,7 +12032,7 @@ msgstr ""
"Einige Ihrer Änderungen erfordern einen Neustart. Bitte starten Sie Calibre "
"so bald wie möglich neu."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:326
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:331
msgid ""
"The changes you have made require calibre be restarted immediately. You will "
"not be allowed set any more preferences, until you restart."
@@ -11899,7 +12040,7 @@ msgstr ""
"Ihre Änderungen erfordern einen sofortigen Neustart von Calibre. Sie können "
"keine Einstellungen mehr ändern, bevor Sie neu starten."
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:331
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:336
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:132
msgid "Restart needed"
msgstr "Neustart erforderlich"
@@ -12442,7 +12583,7 @@ msgstr ""
"überschrieben werden."
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:379
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:382
msgid "Failed to start content server"
msgstr "Content Server konnte nicht gestartet werden"
@@ -12698,35 +12839,39 @@ msgstr "Trennzeichen"
msgid "Choose library"
msgstr "Bibliothek wählen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
msgid "The main toolbar"
msgstr "Die Haupt- Werkzeugsleiste"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:211
+msgid "The optional second toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:212
msgid "The main toolbar when a device is connected"
msgstr "Die Haupt- Werkzeugsleiste bei verbundenem Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:213
msgid "The context menu for the books in the calibre library"
msgstr "Kontextmenü für Bücher in der Calibre Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:215
msgid "The context menu for the books on the device"
msgstr "Kontextmenü für Bücher auf dem Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:249
msgid "Cannot add"
msgstr "Hinzufügen nicht möglich"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:245
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:250
msgid "Cannot add the actions %s to this location"
msgstr "Kann die Aktionen %s nicht an diesem Ort hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:268
msgid "Cannot remove"
msgstr "Entfernen nicht möglich"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:264
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:269
msgid "Cannot remove the actions %s from this location"
msgstr "Kann die Aktionen %s nicht von diesem Ort entfernen"
@@ -12826,8 +12971,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:93
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:277
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:644
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:277
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:652
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
msgid "Search"
msgstr "Suche"
@@ -12920,165 +13065,170 @@ msgstr "Klicken zum Verändern"
msgid "&Alternate shortcut:"
msgstr "&Alternatives Tastenkürzel:"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:316
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:366
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:403
msgid "Rename %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:320
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:348
msgid "Edit sort for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:355
msgid "Add %s to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:368
msgid "Children of %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:347
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:378
+msgid "Delete search %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
msgid "Remove %s from category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:353
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:390
msgid "Search for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:395
msgid "Search for everything but %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:370
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:407
msgid "Add sub-category to %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:411
msgid "Delete user category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:379
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:416
msgid "Hide category %s"
msgstr "Kategorie %s ausblenden"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:420
msgid "Show category"
msgstr "Kategorie anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:430
msgid "Search for books in category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:436
msgid "Search for books not in category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:408
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:445
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:450
msgid "Manage %s"
msgstr "%s verwalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:416
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:453
msgid "Manage Saved Searches"
msgstr "Gespeicherte Suchen verwalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:424
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:428
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:461
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:465
msgid "Manage User Categories"
msgstr "Benutzer-Kategorien verwalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:435
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:472
msgid "Show all categories"
msgstr "Alle Kategorien anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:438
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:475
msgid "Change sub-categorization scheme"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:750
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:791
msgid "The grouped search term name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1015
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1063
msgid ""
"Changing the authors for several books can take a while. Are you sure?"
msgstr ""
"Das Ändern der Autoren für mehrere Bücher kann einige Zeit dauern. Sind Sie "
"sicher?"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1020
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1068
msgid ""
"Changing the metadata for that many books can take a while. Are you sure?"
msgstr ""
"Das Ändern der Metadaten für so viele Bücher kann einige Zeit dauern. Sind "
"Sie sicher?"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1103
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:412
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1151
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:413
msgid "Searches"
msgstr "Suchergebnisse"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1331
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1351
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1360
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1405
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1414
msgid "Rename user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1332
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1386
msgid "You cannot use periods in the name when renaming user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1352
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1361
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1406
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1415
msgid "The name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1384
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1438
msgid "Duplicate search name"
msgstr "Such-Name duplizieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "The saved search name %s is already used."
msgstr "Der gespeicherte Such-Name %s wird schon verwendet."
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1786
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
msgid "New Category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1837
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1840
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1892
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1895
msgid "Delete user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1838
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1893
msgid "%s is not a user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1896
msgid "%s contains items. Do you really want to delete it?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1862
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1917
msgid "Remove category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1863
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1918
msgid "User category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1882
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1937
msgid "Add to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1883
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1938
msgid "A user category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2006
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2061
msgid "Find item in tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2009
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
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"
@@ -13088,51 +13238,51 @@ msgid ""
"containing the text \"foo\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2018
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2073
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2022
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2077
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2023
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2078
msgid "Find the first/next matching item"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2030
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083
msgid "Collapse all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2051
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2107
msgid "No More Matches.
\n"
" Quitting may cause corruption on the device.
\n"
@@ -13262,11 +13401,11 @@ msgstr ""
"verursachen.
\n"
" Sind Sie sicher, dass sie beenden möchten?"
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -13475,7 +13614,7 @@ msgid "Options to customize the ebook viewer"
msgstr "Einstellungen zum Anpassen des eBook Viewers"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:47
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr "Zuletzt verwendete Fenstergröße merken"
@@ -13557,36 +13696,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
msgid "&Lookup in dictionary"
msgstr "Im Wörterbuch nachsch&lagen"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:141
msgid "Go to..."
msgstr "Gehe zu..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr "Nächster Abschnitt"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr "Vorheriger Abschnitt"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr "Beginn des Dokuments"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr "Ende des Dokuments"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr "Beginn des Abschnitts"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr "Ende des Abschnitts"
@@ -13656,81 +13795,85 @@ msgstr ""
msgid "Search for text in book"
msgstr "Suche nach Text im Buch"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:292
msgid "Print Preview"
msgstr "Druckvorschau"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:341
+#: /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 "Verbinde mit dict.org zum Nachschlagen von: %s…"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:447
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:467
msgid "Choose ebook"
msgstr "eBook wählen"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr "eBooks"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:504
msgid "No matches found for: %s"
msgstr "Keine Treffer gefunden für: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:527
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:541
msgid "Loading flow..."
msgstr "Lade Ablauf..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:579
msgid "Laying out %s"
msgstr "Lege %s an"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:596
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:610
msgid "Bookmark #%d"
msgstr "#%d zu Lesezeichen hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:600
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:614
msgid "Add bookmark"
msgstr "Lesezeichen hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:601
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:615
msgid "Enter title for bookmark:"
msgstr "Titel für Lesezeichen eingeben:"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:611
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:625
msgid "Manage Bookmarks"
msgstr "Lesezeichen verwalten"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:651
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:665
msgid "Loading ebook..."
msgstr "Lade eBook..."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:663
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:677
msgid "Could not open ebook"
msgstr "Konnte eBook nicht öffnen"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:756
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:770
msgid "Options to control the ebook viewer"
msgstr "Einstellungen zur Kontrolle des eBook Viewers"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:763
+#: /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 ""
"Falls angegeben, dann wird das Viewer Fenster beim Start im Vordergrund "
"angezeigt."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:766
+#: /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 ""
"Wenn ausgewählt, wird das Betrachter- Fenster nach Möglichkeit im "
"Vollbildmodus geöffnet."
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:771
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:785
msgid "Print javascript alert and console messages to the console"
msgstr "Javascript Alarme und Konsolennachrichten auf der Konsole ausgeben"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -13808,27 +13951,27 @@ msgstr "Finde vorherige Stelle"
msgid "Print eBook"
msgstr "eBook drucken"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr "Groß-/Kleinschreibung ändern"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr "Groß-/Kleinschreibung vertauschen"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr "Zur Größenänderung ziehen"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr "Anzeigen"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr "Ausblenden"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr "Umschalten"
@@ -13986,16 +14129,16 @@ msgstr "Übermittlung läuft..."
msgid "Mail successfully sent"
msgstr "eMail erfolgreich verschickt"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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."
@@ -14003,29 +14146,29 @@ 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:150
+#: /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:152
+#: /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:159
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
msgid "Your %s &email address:"
msgstr "Ihre %s &E-Mail Adresse:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
msgid "Your %s &username:"
msgstr "Ihr %s &Benutzername"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:162
msgid "Your %s &password:"
msgstr "Ihr %s &Passwort:"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:179
+#: /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 "
@@ -14035,23 +14178,35 @@ msgstr ""
"Sie bitte die %s Emailadresse zu den erlaubten Adressen in ihrer Amazon.com- "
"Kindle- Verwaltungsseite hinzu."
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:186
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:187
msgid "Setup"
msgstr "Einrichtung"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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 "Schlechte Einstellung"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:202
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:203
msgid "You must set the From email address"
msgstr "Sie müssen die eMail-Adresse des Absenders angeben"
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:209
-msgid "You must set the username and password for the mail server."
+#: /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 ""
-"Sie müssen den Benutzernamen und das Passwort für den Mailserver angeben."
#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:124
msgid "Send email &from:"
@@ -14174,54 +14329,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr "&Inhalt-Server einschalten"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr "ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr "ja"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr "nicht ausgewählt"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr "nein"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr "heute"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr "gestern"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr "in diesem Monat"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr "vor Tagen"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr "leer"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr "leer"
@@ -15262,11 +15417,11 @@ msgstr ""
"\n"
"Sie erhalten Hilfe zu einem bestimmten Befehl mit: %%prog command --help\n"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr "Kein Suchname angegeben"
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
@@ -15274,23 +15429,23 @@ msgstr ""
"Der Suchname darf ausschließlich Kleinbuchstaben, Zahlen und Unterstriche "
"enthalten und muß mit einem Buchstaben anfangen."
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr "%sdie durchschnittliche Bewertung ist %3.1f"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr "Haupt"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
"
msgstr "BEWERTUNG: %s
"
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:171
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:169
msgid "TAGS: %s
"
msgstr "ETIKETTEN: %s
"
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:176
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:174
msgid "SERIES: %s [%s]
"
msgstr "REIHEN: %s [%s]
"
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:269
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:267
msgid "Books in your library"
msgstr "Bücher in Ihrer Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:275
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:273
msgid "By "
msgstr "Von "
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:276
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:274
msgid "Books sorted by "
msgstr "Bücher sortiert nach "
@@ -15778,41 +15933,44 @@ msgid "Read metadata from files"
msgstr "Metadaten aus Dateien lesen"
#: /home/kovid/work/calibre/src/calibre/utils/config.py:717
-msgid "The priority of worker processes"
-msgstr "Priorität der Arbeitsaufträge"
+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.py:719
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:722
msgid "Swap author first and last names when reading metadata"
msgstr ""
"Vorname und Nachname des Autors beim Einlesen der Metadaten vertauschen."
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:721
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:724
msgid "Add new formats to existing book records"
msgstr "Neue Formate zu schon vorhandenen Bucheinträgen hinzufügen"
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:723
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:726
msgid "Tags to apply to books added to the library"
msgstr "Etiketten, die neu hinzugefügten Büchern angehängt werden"
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:727
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
msgid "List of named saved searches"
msgstr "Liste der benannten gespeicherten Suchen"
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:728
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:731
msgid "User-created tag browser categories"
msgstr "Benutzererstellte Etiketten-Browser Kategorieen"
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:733
msgid "How and when calibre updates metadata on the device."
msgstr "Wie und wann Calibre Metadaten auf dem Gerät aktualisiert."
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:732
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:735
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.py:737
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:740
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 "
@@ -16346,16 +16504,16 @@ msgstr "Authentifizierung schlug fehl am Server: %s"
msgid "Control email delivery"
msgstr "eMail Versand kontrollieren"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:119
+#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:120
msgid "Unknown section"
msgstr "Unbekannter Abschnitt"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:141
+#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:142
msgid "Unknown feed"
msgstr "Feed unbekannt"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:159
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:186
+#: /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 "Artikel ohne Titel"
@@ -16392,96 +16550,96 @@ msgstr ""
msgid "Unknown News Source"
msgstr "Nachrichtenquelle unbekannt"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:629
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:630
msgid "The \"%s\" recipe needs a username and password."
msgstr ""
"Das \"%s\" Downloadschema benötigt einen Benutzernamen und ein Passwort."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:735
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:736
msgid "Download finished"
msgstr "Download beendet"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:737
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:738
msgid "Failed to download the following articles:"
msgstr "Der Download der folgenden Artikel schlug fehl:"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:743
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:744
msgid "Failed to download parts of the following articles:"
msgstr "Der Download von Teilen der folgenden Artikel schlug fehl:"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:745
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:746
msgid " from "
msgstr " von "
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:747
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:748
msgid "\tFailed links:"
msgstr "\tFehlgeschlagene Verknüpfungen:"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:842
+#: /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:844
+#: /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:846
+#: /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:869
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:870
msgid "Fetching feeds..."
msgstr "Rufe Feeds ab..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:874
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:875
msgid "Got feeds from index page"
msgstr "Feeds der Index-Seite erhalten"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:883
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:884
msgid "Trying to download cover..."
msgstr "Umschlagbild versuchen herunterzuladen ..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:885
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:886
msgid "Generating masthead..."
msgstr "Erstelle Impressum..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:965
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:966
msgid "Starting download [%d thread(s)]..."
msgstr "Download von [%d Thread(s)] starten ..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:981
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:982
msgid "Feeds downloaded to %s"
msgstr "Feeds wurden nach %s heruntergeladen"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:990
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:991
msgid "Could not download cover: %s"
msgstr "Umschlagbild konnte nicht heruntergeladen werden: %s"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:999
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1000
msgid "Downloading cover from %s"
msgstr "Umschlagbild von %s herunterladen"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1045
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1046
msgid "Masthead image downloaded"
msgstr "Impressumskopie geladen"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1213
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1214
msgid "Untitled Article"
msgstr "Artikel ohne Titel"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1284
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1285
msgid "Article downloaded: %s"
msgstr "Artikel heruntergeladen: %s"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1295
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1296
msgid "Article download failed: %s"
msgstr "Herunterladen der Artikel schlug fehl: %s"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1312
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1313
msgid "Fetching feed"
msgstr "Feed abrufen"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1459
+#: /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."
@@ -16489,7 +16647,7 @@ msgstr ""
"Login fehlgeschlagen, überprüfen Sie ihren Benutzername und Passwort für den "
"calibre Magazin Service."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1474
+#: /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."
@@ -16498,18 +16656,18 @@ msgstr ""
"Abonnement ausgelaufen oder Sie haben die maximale Anzahl von Downloads für "
"heute überschritten."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:47
+#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:46
msgid "You"
msgstr "Sie"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:74
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:83
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:185
+#: /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 "Geplant"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:85
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:186
+#: /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 "Angepasst"
@@ -17319,9 +17477,6 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ "Option außer Gebrauch und wird bevorzugt behandelt. Um --font-delta zu "
#~ "benutzen, geben Sie 0 an. Voreinstellung: %defaultpt"
-#~ msgid "Toolbar"
-#~ msgstr "Symbolleiste"
-
#~ msgid "Show &text in toolbar buttons"
#~ msgstr "Zeige &Text in Schaltflächen der Symbolleiste"
@@ -18038,6 +18193,9 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ msgid "Invalid size"
#~ msgstr "Ungültige Größe"
+#~ msgid "The priority of worker processes"
+#~ msgstr "Priorität der Arbeitsaufträge"
+
#~ msgid ""
#~ "\n"
@@ -18108,6 +18266,9 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ msgid "Output:"
#~ msgstr "Ausgabe:"
+#~ msgid "No valid plugin found in "
+#~ msgstr "Kein gültiges Plugin gefunden in "
+
#~ msgid " plugins"
#~ msgstr " Plugins"
@@ -18691,6 +18852,10 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ "Vergessen Sie nicht, Ihren Googlemail Benutzernamen und Ihr Passwort "
#~ "anzugeben"
+#~ msgid "You must set the username and password for the mail server."
+#~ msgstr ""
+#~ "Sie müssen den Benutzernamen und das Passwort für den Mailserver angeben."
+
#~ msgid "Select database location"
#~ msgstr "Ort der Datenbank wählen"
@@ -20327,21 +20492,45 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ msgid " "
#~ msgstr " "
+#~ msgid "book"
+#~ msgstr "Buch"
+
#~ msgid "Communicate with the Sweex MM300"
#~ msgstr "Kommunikation mit dem Sweex MM300"
+#~ msgid "replace"
+#~ msgstr "ersetzen"
+
+#~ msgid "ignore"
+#~ msgstr "ignorieren"
+
#~ msgid "Reader"
#~ msgstr "Reader"
#~ msgid "Rename '%s'"
#~ msgstr "Benenne '%s' um"
+#~ msgid "misc"
+#~ msgstr "Verschiedenes"
+
+#~ msgid "ascii/LaTeX"
+#~ msgstr "ascii/LaTeX"
+
#~ msgid "Download covers from librarything.com"
#~ msgstr "Umschlagbilder von librarything.com herunterladen"
#~ msgid "Downloads series/tags/rating information from librarything.com"
#~ msgstr "Lädt Reihe/Etiketten/Bewertung von librarything.com"
+#~ msgid "backslashreplace"
+#~ msgstr "Backslash-Ersetzen"
+
+#~ msgid "strict"
+#~ msgstr "streng"
+
+#~ msgid "mixed"
+#~ msgstr "gemischt"
+
#~ msgid "Show &donate button (restart)"
#~ msgstr "Schaltfläche zum Spen&den anzeigen (Neustart)"
@@ -20402,6 +20591,9 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ msgstr ""
#~ "Sie können die Bibliotheken nicht wechseln, wenn ein Gerät angeschlossen ist."
+#~ msgid "Customize the toolbar"
+#~ msgstr "Werkzeugleiste anpassen"
+
#~ msgid "Apply function &after replace:"
#~ msgstr "Funktion n&ach Ersetzung anwenden:"
@@ -20596,6 +20788,9 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ " Die rote Farbe zeigt an, dass die derzeitige Sortierung nach Autor nicht "
#~ "mit dem Autor übereinstimmt"
+#~ msgid "&Split the toolbar into two toolbars"
+#~ msgstr "&Werkzeugleiste in zwei Leisten teilen"
+
#~ msgid ""
#~ "Values for the tweaks are shown below. Edit them to change the behavior of "
#~ "calibre. Your changes will only take effect after a restart of calibre."
@@ -20604,6 +20799,16 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ "Verhalten von Calibre zu beeinflussen. Ihre Änderungen werden erst nach "
#~ "einem Neustart von Calibre wirksam."
+#~ msgid ""
+#~ "is the result of the efforts of many volunteers from all over the world. If "
+#~ "you find it useful, please consider donating to support its development. "
+#~ "Your donation helps keep calibre development going."
+#~ msgstr ""
+#~ "ist das Ergebnis der Bemühungen von vielen Freiwilligen überall auf der "
+#~ "Erde. Wenn Sie es nützlich finden, bitten wir um eine Spende zur "
+#~ "Unterstützung der weiteren Entwicklung. Ihre Spende hilft, die Entwicklung "
+#~ "von Calibre am Laufen zu halten."
+
#~ msgid ""
#~ "If an existing book with a similar title and author is found that does not "
#~ "have the format being added, the format is added\n"
@@ -20836,3 +21041,6 @@ msgstr "CSS-Stylesheets nicht herunterladen."
#~ msgid "The integrity check completed with no uncorrectable errors found."
#~ msgstr "Die Integritätsüberprüfung wurde ohne unbehebbare Fehler beendet."
+
+#~ msgid "Customize searching"
+#~ msgstr "Suche anpassen"
diff --git a/src/calibre/translations/el.po b/src/calibre/translations/el.po
index fbd8cec794..2bc76d5472 100644
--- a/src/calibre/translations/el.po
+++ b/src/calibre/translations/el.po
@@ -7,32 +7,32 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME 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:553
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:564
msgid "Search pattern (regular expression) to be replaced with sr1-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:558
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:569
msgid "Replacement to replace the text found with sr1-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:562
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:573
msgid "Search pattern (regular expression) to be replaced with sr2-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:567
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:578
msgid "Replacement to replace the text found with sr2-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:571
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:582
msgid "Search pattern (regular expression) to be replaced with sr3-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:587
msgid "Replacement to replace the text found with sr3-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:678
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:689
msgid "Could not find an ebook inside the archive"
msgstr "Δε βρέθηκε ηλεκτρονικό βιβλίο στο αρχείο."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:736
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:747
msgid "Values of series index and rating must be numbers. Ignoring"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:743
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:754
msgid "Failed to parse date/time"
msgstr "Αποτυχία ανάγνωσης ημερομηνίας/ώρας"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:898
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:909
msgid "Converting input to HTML..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:925
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:936
msgid "Running transforms on ebook..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1015
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1032
msgid "Creating"
msgstr "Δημιουργία"
@@ -2302,7 +2346,7 @@ msgstr "Έναρξη"
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:22
+#: /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 "
@@ -2313,6 +2357,10 @@ msgid ""
"of Contents)."
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 "
@@ -2666,105 +2714,105 @@ msgstr ""
msgid "TEMPLATE ERROR"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "No"
msgstr "Όχι"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "Yes"
msgstr "Ναι"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:658
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:675
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:993
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:426
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1018
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:331
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:576
+#: /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:659
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:676
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:994
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:431
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019
msgid "Author(s)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:660
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:677
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
msgid "Publisher"
msgstr "Εκδότης"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:661
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:678
#: /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:662
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:679
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:247
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:129
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:79
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:389
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1200
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1206
#: /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:664
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:681
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:31
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:377
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1196
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1202
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:753
+#: /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:666
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:683
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1211
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /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:667
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:684
msgid "Language"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:669
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1188
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:686
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194
msgid "Timestamp"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:671
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:688
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69
#: /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:673
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:690
msgid "Rights"
msgstr "Δικαιώματα"
@@ -2915,7 +2963,7 @@ msgid "Convert comments downloaded from %s to plain text"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:145
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:157
msgid "Downloads metadata from Google Books"
msgstr ""
@@ -3046,7 +3094,7 @@ msgstr ""
msgid "The publisher of the book to search for."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64
msgid ""
"\n"
"%prog [options] ISBN\n"
@@ -3118,19 +3166,43 @@ msgstr ""
msgid "Cover saved to file "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1346
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1484
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1356
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
msgid "Cover"
msgstr "Εξώφυλλο"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:16
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:280
msgid "Downloads metadata from Amazon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:22
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:287
+msgid "US"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:288
+msgid "France"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:289
+msgid "Germany"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:290
+msgid "UK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:375
+msgid "Amazon timed out. Try again later."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:94
msgid "Metadata source"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/openlibrary.py:15
+msgid "Downloads metadata from The Open Library"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22
msgid "Modify images to meet Palm device size limitations."
msgstr ""
@@ -3173,70 +3245,70 @@ msgstr ""
msgid "This is an Amazon Topaz book. It cannot be processed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1485
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
msgid "Title Page"
msgstr "Σελίδα τίτλου"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1486
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
#: /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:1487
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
msgid "Index"
msgstr "Ευρετήριο"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1488
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
msgid "Glossary"
msgstr "Γλωσσάρι"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1489
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
msgid "Acknowledgements"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1490
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
msgid "Bibliography"
msgstr "Βιβλιογραφία"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
msgid "Colophon"
msgstr "Κολοφώνας"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
msgid "Copyright"
msgstr "Πνευματικά Δικαιώματα"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
msgid "Dedication"
msgstr "Αφιέρωση"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1501
msgid "Epigraph"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1502
msgid "Foreword"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1503
msgid "List of Illustrations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1504
msgid "List of Tables"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1505
msgid "Notes"
msgstr "Σημειώσεις"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1506
msgid "Preface"
msgstr "Πρόλογος"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1507
msgid "Main Text"
msgstr ""
@@ -3256,9 +3328,9 @@ 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:71
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:751
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:759
msgid "Rating"
msgstr "Αξιολόγηση"
@@ -3422,6 +3494,7 @@ 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 "Θέμα"
@@ -3544,7 +3617,7 @@ msgstr ""
msgid "Table of Contents:"
msgstr "Πίνακας Περιεχομένων"
-#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:271
+#: /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"
@@ -3686,135 +3759,139 @@ msgid ""
"are always removed with plain text output."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:72
msgid "Send file to storage card instead of main memory by default"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:74
msgid "Confirm before deleting"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:76
msgid "Main window geometry"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:77
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:78
msgid "Notify when a new version is available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:80
msgid "Use Roman numerals for series number"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:82
msgid "Sort tags list by name, popularity, or rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:84
+msgid "Match tags by any or all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:86
msgid "Number of covers to show in the cover browsing mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:88
msgid "Defaults for conversion to LRF"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
msgid "Options for the LRF ebook viewer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
msgid "Formats that are viewed using the internal viewer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
msgid "Columns to be displayed in the book list"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:96
msgid "Automatically launch content server on application startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
msgid "Oldest news kept in database"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:98
msgid "Show system tray icon"
msgstr "Εμφάνιση εικονιδίου πλαισίου συστήματος"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:100
msgid "Upload downloaded news to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:102
msgid "Delete books from library after uploading to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:104
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:103
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:106
msgid "Disable notifications from the system tray icon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:108
msgid "Default action to perform when send to device button is clicked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113
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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:116
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:131
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:134
msgid "Maximum number of waiting worker processes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136
msgid "Download social metadata (tags/rating/etc.)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138
msgid "Overwrite author and title with new metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:101
msgid "Automatically download the cover, if available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:142
msgid "Limit max simultaneous jobs to number of CPUs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144
msgid "The layout of the user interface"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:146
msgid "Show the average rating per item indication in the tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:148
msgid "Disable UI animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153
msgid "tag browser categories not to display"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:419
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:423
msgid "Choose Files"
msgstr ""
@@ -3979,8 +4056,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:371
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:28
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:138
msgid "No book selected"
msgstr ""
@@ -4022,8 +4099,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92
msgid "No books selected"
msgstr ""
@@ -4083,8 +4160,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:167
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:126
+#: /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 ""
@@ -4174,6 +4251,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:430
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:274
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Είστε σίγουροι;"
@@ -4219,8 +4297,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:689
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:963
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:972
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:276
@@ -4254,7 +4332,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
#: /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:782
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:789
msgid "Not allowed"
msgstr ""
@@ -4285,7 +4363,7 @@ msgid "Bulk convert"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:86
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:507
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517
msgid "Cannot convert"
msgstr ""
@@ -4293,7 +4371,7 @@ msgstr ""
msgid "Starting conversion of %d book(s)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:171
msgid "Empty output file, probably the conversion process crashed"
msgstr ""
@@ -4474,7 +4552,7 @@ 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:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:96
msgid "Email to"
msgstr ""
@@ -4482,32 +4560,32 @@ msgstr ""
msgid "Email to and delete from library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:89
+#: /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:104
+#: /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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "D"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:142
msgid "Connect/share"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:84
msgid "Stopping"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:176
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85
msgid "Stopping server, this could take upto a minute, please wait..."
msgstr ""
@@ -4594,26 +4672,26 @@ msgid "Downloading {0} for {1} book(s)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:189
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:224
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:229
msgid "Cannot merge books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:230
msgid "At least two books must be selected for merging"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:233
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:239
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:241
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -4621,7 +4699,7 @@ msgid ""
"changed.
Please confirm you want to proceed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:253
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 "
@@ -4633,7 +4711,7 @@ msgid ""
"calibre library.
Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:269
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -4644,19 +4722,19 @@ msgid ""
"Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /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:17
+#: /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:52
+#: /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:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:83
msgid " fetched."
msgstr ""
@@ -4721,7 +4799,7 @@ msgid "Ctrl+P"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:206
msgid "Run welcome wizard"
msgstr ""
@@ -4729,11 +4807,11 @@ msgstr ""
msgid "Restart in debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:40
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
msgid "Cannot configure while there are running jobs."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr ""
@@ -4806,7 +4884,7 @@ msgid "Click the show details button to see which ones."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:758
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:766
msgid "Show book details"
msgstr ""
@@ -4893,36 +4971,40 @@ msgstr "Προβολή"
msgid "View specific format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:38
+msgid "Read a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:181
msgid "Cannot view"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:119
msgid "Format unavailable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:106
msgid "Selected books have no formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:108
#: /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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:127
msgid "Multiple Books Selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:128
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 "
@@ -4930,11 +5012,11 @@ msgid ""
"continue?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:137
msgid "Cannot open folder"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:182
msgid "%s has no available formats."
msgstr ""
@@ -4959,7 +5041,7 @@ 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:838
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:841
msgid "No books"
msgstr ""
@@ -5097,8 +5179,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:173
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:175
@@ -5160,8 +5243,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:160
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:384
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1186
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1192
msgid "Path"
msgstr "Διαδρομή"
@@ -5171,17 +5254,17 @@ msgstr "Διαδρομή"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:153
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:139
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /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/book_details.py:29
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:997
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1189
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
msgid "Collections"
msgstr "Συλλογές"
@@ -5191,25 +5274,25 @@ msgid "Click to open"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:57
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1199
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:375
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:381
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1201
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
#: /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/widgets.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:350
msgid "None"
msgstr "Κανένα"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:158
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:243
msgid "Paste Cover"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:244
msgid "Copy Cover"
msgstr ""
@@ -5259,7 +5342,7 @@ msgstr ""
msgid "output"
msgstr "έξοδος"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:42
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:295
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:32
@@ -5267,7 +5350,7 @@ msgstr "έξοδος"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:33
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:38
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:44
#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:112
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:120
@@ -5282,7 +5365,7 @@ msgstr "έξοδος"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:33
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:42
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:56
+#: /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
@@ -5290,14 +5373,14 @@ msgstr "έξοδος"
#: /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
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:130
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:139
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
@@ -5313,68 +5396,36 @@ msgstr "έξοδος"
msgid "Form"
msgstr "Φόρμα"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:78
msgid "Bib file encoding:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:79
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:43
msgid "Fields to include in output:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:92
-msgid "ascii/LaTeX"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:80
msgid "Encoding configuration (change if you have errors) :"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:94
-msgid "strict"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:95
-msgid "replace"
-msgstr "αντικατάσταση"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:96
-msgid "ignore"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:97
-msgid "backslashreplace"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:81
msgid "BibTeX entry type:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:99
-msgid "mixed"
-msgstr "Μικτό"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:100
-msgid "misc"
-msgstr "διάφορα"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:101
-msgid "book"
-msgstr "βιβλίο"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:82
msgid "Create a citation tag?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:83
msgid "Add files path with formats?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:84
msgid "Expression to form the BibTeX citation tag:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:85
msgid ""
"Some explanation about this template:\n"
" -The fields availables are 'author_sort', 'authors', 'id',\n"
@@ -5655,6 +5706,7 @@ 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:139
msgid "Normal"
@@ -5893,10 +5945,14 @@ msgstr ""
msgid "FB2 Output"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:39
+#: /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 ""
@@ -6488,7 +6544,7 @@ 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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
msgid "Test"
msgstr "Έλεγχος"
@@ -6520,25 +6576,25 @@ msgstr "Επόμε&νο"
msgid "Preview"
msgstr "Προεπισκόπηση"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:15
+#: /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:28
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:34
+#: /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:71
+#: /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:72
+#: /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 ""
@@ -6643,19 +6699,19 @@ msgstr ""
msgid "The XPath expression %s is invalid."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:57
+#: /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:58
+#: /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:59
+#: /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:60
+#: /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 "
@@ -6663,6 +6719,10 @@ msgid ""
"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"
@@ -6885,11 +6945,11 @@ msgid ""
"href=\"http://calibre-ebook.com/user_manual/xpath.html\">XPath Tutorial."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:118
+#: /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:149
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:158
msgid "Cover browser could not be loaded"
msgstr ""
@@ -6898,11 +6958,11 @@ msgstr ""
#: /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:293
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:557
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:598
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:621
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:680
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
@@ -6917,66 +6977,66 @@ 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:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:637
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:630
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
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:659
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:667
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:661
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Clear '%s'"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:289
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:297
msgid " index:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:366
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:512
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:520
msgid "Apply changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:705
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:713
msgid "Remove series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:716
msgid "Automatically number books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:711
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:719
msgid "Force numbers to start with "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:782
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:790
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:826
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:834
msgid "Remove all tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:846
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:854
msgid "tags to add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:852
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:861
msgid "tags to remove"
msgstr ""
@@ -7069,97 +7129,97 @@ msgstr "Σφάλμα"
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156
-#: /home/kovid/work/calibre/src/calibre/gui2/email.py:299
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:307
msgid "No suitable formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:644
+#: /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:695
+#: /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:696
+#: /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:739
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
msgid "Device: "
msgstr "Συσκευή: "
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:741
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
msgid " detected."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:839
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842
msgid "selected to send"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:858
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
msgid "%i of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864
msgid "0 of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "Choose format to send to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:870
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873
msgid "No device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
msgid "Cannot send: No device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
msgid "No card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
msgid "Cannot send: Device has no storage card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:935
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1018
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:943
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1026
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1160
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:964
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:972
msgid "Sending catalogs to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1063
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1073
msgid "Sending news to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1117
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1127
msgid "Sending books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1157
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167
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:1229
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1239
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1230
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1240
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:156
msgid "Hide column %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
msgid "Sort on %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:162
msgid "Ascending"
msgstr "Αύξουσα"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165
msgid "Descending"
msgstr "Φθίνουσα"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:177
msgid "Change text alignment for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Left"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Right"
msgstr "Δεξιά"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:180
msgid "Center"
msgstr "Κέντρο"
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:199
msgid "Show column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:211
msgid "Restore default layout"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:783
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:790
msgid ""
"Dropping onto a device is not supported. First add the book to the calibre "
"library."
@@ -10076,7 +10184,7 @@ msgid "No matches for the search phrase %s were found."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:483
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:503
msgid "No matches found"
msgstr "Δεν βρέθηκαν αντιστοιχίες."
@@ -10093,12 +10201,12 @@ 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:539
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:558
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:540
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:559
msgid "Previous Page"
msgstr "Προηγούμενη Σελίδα"
@@ -10248,21 +10356,21 @@ msgstr ""
msgid "%s is already running."
msgstr "Το %s εκτελείται ήδη."
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:20
+#: /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:61
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:113
msgid "&Preferences"
msgstr "&Προτιμήσεις"
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:114
msgid "&Quit"
msgstr "&Έξοδος"
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:138
msgid "Unhandled exception"
msgstr ""
@@ -10337,7 +10445,7 @@ msgid "%s %s for: %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:291
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:163
msgid "Done"
msgstr "Ολοκληρώθηκε"
@@ -10346,7 +10454,7 @@ msgid "Successfully downloaded metadata for %d out of %d books"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:294
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:757
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:765
msgid "Details"
msgstr ""
@@ -10466,17 +10574,22 @@ msgstr ""
msgid "&Configure metadata from file name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
-msgid "High"
-msgstr "Υψηλή"
-
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:141
msgid "Low"
msgstr "Χαμηλή"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
+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:164
msgid "Confirmation dialogs have all been reset"
msgstr ""
@@ -10593,7 +10706,7 @@ msgstr ""
msgid "Add &custom column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion.py:39
+#: /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."
@@ -10634,7 +10747,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:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:140
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:145
msgid "Yes/No"
msgstr "Ναι/Όχι"
@@ -10652,10 +10765,14 @@ msgid "Quick create:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149
msgid "Modified Date"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
+msgid "People's names"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
msgid "Number"
msgstr "Αριθμός"
@@ -10681,94 +10798,94 @@ msgstr ""
msgid "Selected column is not a user-defined column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:146
msgid "My Tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:147
msgid "My Series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148
msgid "My Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150
+msgid "People"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:179
msgid "No lookup name was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:183
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:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:186
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:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:196
msgid "No column heading was provided"
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:206
msgid "The lookup name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:218
msgid "The heading %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:221
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
msgid "You must enter a template for composite columns"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:238
msgid "You must enter at least one value for enumeration columns"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:233
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:242
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:237
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:246
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:184
+#: /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:185
+#: /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:186
+#: /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:187
+#: /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:188
+#: /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:189
+#: /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:190
-msgid "Show checkmarks"
-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: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 "
@@ -10776,7 +10893,20 @@ msgid ""
"Everything else will show nothing."
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: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 ""
"
to this email "
"address (provided it is in one of the listed formats)."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:115
msgid "new email address"
msgstr ""
@@ -10904,91 +11049,91 @@ msgstr ""
msgid "Wide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Medium"
msgstr "Μεσαίο"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Small"
msgstr "Μικρό"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
msgid "Large"
msgstr "Μεγάλο"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Always"
msgstr "Πάντα"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Automatic"
msgstr "Αυτόματο"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
msgid "Never"
msgstr "Ποτέ"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "By first letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
msgid "Partitioned"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:140
msgid "User Interface &layout (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:141
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
msgid "Choose &language (requires restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
msgid "Show &average ratings in the tags browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
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:148
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
msgid "Disable &animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
msgid "Enable system &tray icon (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
msgid "Show &splash screen at startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:148
msgid "Disable ¬ifications in system tray"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
msgid "Use &Roman numerals for series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
msgid "Show cover &browser in a separate window (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
msgid "Tags browser category &partitioning method:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
msgid ""
"Choose how tag browser subcategories are displayed when\n"
"there are more items than the limit. Select by first\n"
@@ -10997,22 +11142,22 @@ msgid ""
"if you never want subcategories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:157
msgid "&Collapse when more items than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:158
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:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
msgid "Categories with &hierarchical items:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
msgid ""
"A comma-separated list of columns in which items containing\n"
"periods are displayed in the tag browser trees. For example, if\n"
@@ -11022,64 +11167,60 @@ 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:170
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:167
msgid "&Toolbar"
msgstr "Γραμμή &εργαλείων"
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:168
msgid "&Icon size:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:169
msgid "Show &text under icons:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:173
-msgid "&Split the toolbar into two toolbars"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:170
msgid "Interface font:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
msgid "Change &font (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:228
#: /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:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:235
msgid "Restore &defaults"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:236
msgid "Save changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:237
msgid "Cancel and return to overview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:293
msgid "Restoring to defaults not supported for"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:328
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:326
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:331
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:331
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:336
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:132
msgid "Restart needed"
msgstr ""
@@ -11568,7 +11709,7 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:379
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:382
msgid "Failed to start content server"
msgstr ""
@@ -11805,35 +11946,39 @@ msgstr ""
msgid "Choose library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
msgid "The main toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:211
+msgid "The optional second toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:212
msgid "The main toolbar when a device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:213
msgid "The context menu for the books in the calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:215
msgid "The context menu for the books on the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:249
msgid "Cannot add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:245
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:250
msgid "Cannot add the actions %s to this location"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:268
msgid "Cannot remove"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:264
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:269
msgid "Cannot remove the actions %s from this location"
msgstr ""
@@ -11930,8 +12075,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:93
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:277
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:644
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:277
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:652
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
msgid "Search"
msgstr "Αναζήτηση"
@@ -12023,161 +12168,166 @@ msgstr "Κλικ για αλλαγή"
msgid "&Alternate shortcut:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:316
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:366
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:403
msgid "Rename %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:320
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:348
msgid "Edit sort for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:355
msgid "Add %s to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:368
msgid "Children of %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:347
-msgid "Remove %s from category %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:353
-msgid "Search for %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:358
-msgid "Search for everything but %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:370
-msgid "Add sub-category to %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
-msgid "Delete user category %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:379
-msgid "Hide category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:378
+msgid "Delete search %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
-msgid "Show category"
+msgid "Remove %s from category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:393
-msgid "Search for books in category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:390
+msgid "Search for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399
-msgid "Search for books not in category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:395
+msgid "Search for everything but %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:408
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:413
-msgid "Manage %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:407
+msgid "Add sub-category to %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:411
+msgid "Delete user category %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:416
+msgid "Hide category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:420
+msgid "Show category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:430
+msgid "Search for books in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:436
+msgid "Search for books not in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:445
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:450
+msgid "Manage %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:453
msgid "Manage Saved Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:424
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:428
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:461
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:465
msgid "Manage User Categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:435
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:472
msgid "Show all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:438
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:475
msgid "Change sub-categorization scheme"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:750
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:791
msgid "The grouped search term name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1015
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1063
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:1020
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1068
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:1103
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:412
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1151
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:413
msgid "Searches"
msgstr "Αναζητήσεις"
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1331
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1351
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1360
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1405
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1414
msgid "Rename user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1332
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1386
msgid "You cannot use periods in the name when renaming user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1352
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1361
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1406
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1415
msgid "The name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1384
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1438
msgid "Duplicate search name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "The saved search name %s is already used."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1786
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
msgid "New Category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1837
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1840
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1892
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1895
msgid "Delete user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1838
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1893
msgid "%s is not a user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1896
msgid "%s contains items. Do you really want to delete it?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1862
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1917
msgid "Remove category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1863
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1918
msgid "User category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1882
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1937
msgid "Add to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1883
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1938
msgid "A user category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2006
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2061
msgid "Find item in tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2009
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
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"
@@ -12187,60 +12337,60 @@ msgid ""
"containing the text \"foo\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2018
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2073
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2022
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2077
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2023
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2078
msgid "Find the first/next matching item"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2030
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083
msgid "Collapse all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2051
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2107
msgid "No More Matches.
\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:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12547,7 +12690,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12625,36 +12768,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr "Επόμενο τμήμα"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr "Προηγούμενο τμήμα"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12722,77 +12865,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr "Ebooks"
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12867,27 +13014,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr "Εναλλαγή Κεφαλαία-Μικρά"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr "Εμφάνιση"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr "Απόκρυψη"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr "Εναλλαγή"
@@ -13022,65 +13169,78 @@ msgstr "Γίνεται αποστολή..."
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13190,54 +13350,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr "επιλεγμένο"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr "ναι"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr "μη επιλεγμένο"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr "σήμερα"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr "χθες"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr "κενό"
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr "άδειο"
@@ -14040,33 +14200,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr "Κύριο"
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:171
+#: /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:176
+#: /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:269
+#: /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:275
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:273
msgid "By "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:276
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:274
msgid "Books sorted by "
msgstr ""
@@ -14496,40 +14656,43 @@ msgid "Read metadata from files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/config.py:717
-msgid "The priority of worker processes"
+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.py:719
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:722
msgid "Swap author first and last names when reading metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:721
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:724
msgid "Add new formats to existing book records"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:723
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:726
msgid "Tags to apply to books added to the library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:727
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
msgid "List of named saved searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:728
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:731
msgid "User-created tag browser categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:733
msgid "How and when calibre updates metadata on the device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:732
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:735
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.py:737
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:740
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 "
@@ -15060,16 +15223,16 @@ msgstr ""
msgid "Control email delivery"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:119
+#: /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:141
+#: /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:159
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:186
+#: /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 ""
@@ -15100,118 +15263,118 @@ msgstr ""
msgid "Unknown News Source"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:629
+#: /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:735
+#: /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:737
+#: /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:743
+#: /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:745
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:746
msgid " from "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:747
+#: /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:842
+#: /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:844
+#: /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:846
+#: /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:869
+#: /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:874
+#: /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:883
+#: /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:885
+#: /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:965
+#: /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:981
+#: /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:990
+#: /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:999
+#: /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:1045
+#: /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:1213
+#: /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:1284
+#: /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:1295
+#: /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:1312
+#: /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:1459
+#: /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:1474
+#: /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:47
+#: /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:74
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:83
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:185
+#: /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:85
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:186
+#: /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 "Προσαρμοσμένο"
@@ -15304,6 +15467,9 @@ msgstr ""
msgid "Do not download CSS stylesheets."
msgstr ""
+#~ msgid "No valid plugin found in "
+#~ msgstr "Δεν βρέθηκε έγκυρο πρόσθετο "
+
#~ msgid "Communicate with the Nokia 810 internet tablet."
#~ msgstr "Επικοινωνία με το Nokia 810 internet tablet."
@@ -15357,6 +15523,18 @@ msgstr ""
#~ msgid "Copy to Clipboard"
#~ msgstr "Αντιγραφή στο Πρόχειρο"
+#~ msgid "replace"
+#~ msgstr "αντικατάσταση"
+
+#~ msgid "mixed"
+#~ msgstr "Μικτό"
+
+#~ msgid "misc"
+#~ msgstr "διάφορα"
+
+#~ msgid "book"
+#~ msgstr "βιβλίο"
+
#~ msgid "Invalid size"
#~ msgstr "Μη έγκυρο μέγεθος"
@@ -15414,3 +15592,9 @@ msgstr ""
#~ msgid "Communicate with the Kogan"
#~ msgstr "Επικοινωνία με το Kogan"
+
+#~ msgid "Customize the toolbar"
+#~ msgstr "Παραμετροποίηση γραμμής εντολών"
+
+#~ msgid "Customize searching"
+#~ msgstr "Προσαρμογή αναζήτησης"
diff --git a/src/calibre/translations/en_AU.po b/src/calibre/translations/en_AU.po
index 759b7a61ef..69931156a3 100644
--- a/src/calibre/translations/en_AU.po
+++ b/src/calibre/translations/en_AU.po
@@ -7,32 +7,32 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME 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:553
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:564
msgid "Search pattern (regular expression) to be replaced with sr1-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:558
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:569
msgid "Replacement to replace the text found with sr1-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:562
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:573
msgid "Search pattern (regular expression) to be replaced with sr2-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:567
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:578
msgid "Replacement to replace the text found with sr2-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:571
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:582
msgid "Search pattern (regular expression) to be replaced with sr3-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:587
msgid "Replacement to replace the text found with sr3-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:678
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:689
msgid "Could not find an ebook inside the archive"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:736
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:747
msgid "Values of series index and rating must be numbers. Ignoring"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:743
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:754
msgid "Failed to parse date/time"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:898
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:909
msgid "Converting input to HTML..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:925
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:936
msgid "Running transforms on ebook..."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1015
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1032
msgid "Creating"
msgstr ""
@@ -2133,7 +2177,7 @@ msgstr ""
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:22
+#: /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 "
@@ -2144,6 +2188,10 @@ msgid ""
"of Contents)."
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 "
@@ -2493,105 +2541,105 @@ msgstr ""
msgid "TEMPLATE ERROR"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "No"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "Yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:658
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:675
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:993
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:426
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1018
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:331
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:576
+#: /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:659
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:676
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:994
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:431
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019
msgid "Author(s)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:660
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:677
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
msgid "Publisher"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:661
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:678
#: /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:662
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:679
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:247
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:129
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:79
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:389
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1200
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1206
#: /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:664
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:681
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:31
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:377
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1196
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1202
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:753
+#: /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:666
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:683
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1211
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /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:667
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:684
msgid "Language"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:669
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1188
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:686
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194
msgid "Timestamp"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:671
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:688
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69
#: /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:673
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:690
msgid "Rights"
msgstr ""
@@ -2742,7 +2790,7 @@ msgid "Convert comments downloaded from %s to plain text"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:145
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:157
msgid "Downloads metadata from Google Books"
msgstr ""
@@ -2873,7 +2921,7 @@ msgstr ""
msgid "The publisher of the book to search for."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64
msgid ""
"\n"
"%prog [options] ISBN\n"
@@ -2945,19 +2993,43 @@ msgstr ""
msgid "Cover saved to file "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1346
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1484
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1356
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
msgid "Cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:16
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:280
msgid "Downloads metadata from Amazon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:22
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:287
+msgid "US"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:288
+msgid "France"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:289
+msgid "Germany"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:290
+msgid "UK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:375
+msgid "Amazon timed out. Try again later."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:94
msgid "Metadata source"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/openlibrary.py:15
+msgid "Downloads metadata from The Open Library"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22
msgid "Modify images to meet Palm device size limitations."
msgstr ""
@@ -3000,70 +3072,70 @@ msgstr ""
msgid "This is an Amazon Topaz book. It cannot be processed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1485
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
msgid "Title Page"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1486
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
#: /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:1487
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
msgid "Index"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1488
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
msgid "Glossary"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1489
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
msgid "Acknowledgements"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1490
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
msgid "Bibliography"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
msgid "Colophon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
msgid "Copyright"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
msgid "Dedication"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1501
msgid "Epigraph"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1502
msgid "Foreword"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1503
msgid "List of Illustrations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1504
msgid "List of Tables"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1505
msgid "Notes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1506
msgid "Preface"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1507
msgid "Main Text"
msgstr ""
@@ -3083,9 +3155,9 @@ 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:71
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:751
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:759
msgid "Rating"
msgstr ""
@@ -3249,6 +3321,7 @@ 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 ""
@@ -3371,7 +3444,7 @@ msgstr ""
msgid "Table of Contents:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:271
+#: /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"
@@ -3513,135 +3586,139 @@ msgid ""
"are always removed with plain text output."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:72
msgid "Send file to storage card instead of main memory by default"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:74
msgid "Confirm before deleting"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:76
msgid "Main window geometry"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:77
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:78
msgid "Notify when a new version is available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:80
msgid "Use Roman numerals for series number"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:82
msgid "Sort tags list by name, popularity, or rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:84
+msgid "Match tags by any or all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:86
msgid "Number of covers to show in the cover browsing mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:88
msgid "Defaults for conversion to LRF"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
msgid "Options for the LRF ebook viewer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
msgid "Formats that are viewed using the internal viewer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
msgid "Columns to be displayed in the book list"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:96
msgid "Automatically launch content server on application startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
msgid "Oldest news kept in database"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:98
msgid "Show system tray icon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:100
msgid "Upload downloaded news to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:102
msgid "Delete books from library after uploading to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:104
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:103
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:106
msgid "Disable notifications from the system tray icon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:108
msgid "Default action to perform when send to device button is clicked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113
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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:116
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:131
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:134
msgid "Maximum number of waiting worker processes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136
msgid "Download social metadata (tags/rating/etc.)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138
msgid "Overwrite author and title with new metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:101
msgid "Automatically download the cover, if available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:142
msgid "Limit max simultaneous jobs to number of CPUs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144
msgid "The layout of the user interface"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:146
msgid "Show the average rating per item indication in the tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:148
msgid "Disable UI animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153
msgid "tag browser categories not to display"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:419
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:423
msgid "Choose Files"
msgstr ""
@@ -3806,8 +3883,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:371
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:28
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:138
msgid "No book selected"
msgstr ""
@@ -3849,8 +3926,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92
msgid "No books selected"
msgstr ""
@@ -3910,8 +3987,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:167
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:126
+#: /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 ""
@@ -4001,6 +4078,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:430
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:274
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr ""
@@ -4046,8 +4124,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:689
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:963
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:972
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:276
@@ -4081,7 +4159,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
#: /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:782
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:789
msgid "Not allowed"
msgstr ""
@@ -4112,7 +4190,7 @@ msgid "Bulk convert"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:86
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:507
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517
msgid "Cannot convert"
msgstr ""
@@ -4120,7 +4198,7 @@ msgstr ""
msgid "Starting conversion of %d book(s)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:171
msgid "Empty output file, probably the conversion process crashed"
msgstr ""
@@ -4301,7 +4379,7 @@ 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:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:96
msgid "Email to"
msgstr ""
@@ -4309,32 +4387,32 @@ msgstr ""
msgid "Email to and delete from library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:89
+#: /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:104
+#: /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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "D"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:142
msgid "Connect/share"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:84
msgid "Stopping"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:176
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85
msgid "Stopping server, this could take upto a minute, please wait..."
msgstr ""
@@ -4421,26 +4499,26 @@ msgid "Downloading {0} for {1} book(s)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:189
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:224
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:229
msgid "Cannot merge books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:230
msgid "At least two books must be selected for merging"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:233
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:239
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:241
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -4448,7 +4526,7 @@ msgid ""
"changed.
Please confirm you want to proceed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:253
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 "
@@ -4460,7 +4538,7 @@ msgid ""
"calibre library.
Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:269
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -4471,19 +4549,19 @@ msgid ""
"Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /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:17
+#: /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:52
+#: /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:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:83
msgid " fetched."
msgstr ""
@@ -4548,7 +4626,7 @@ msgid "Ctrl+P"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:206
msgid "Run welcome wizard"
msgstr ""
@@ -4556,11 +4634,11 @@ msgstr ""
msgid "Restart in debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:40
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
msgid "Cannot configure while there are running jobs."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr ""
@@ -4633,7 +4711,7 @@ msgid "Click the show details button to see which ones."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:758
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:766
msgid "Show book details"
msgstr ""
@@ -4720,36 +4798,40 @@ msgstr ""
msgid "View specific format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:38
+msgid "Read a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:181
msgid "Cannot view"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:119
msgid "Format unavailable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:106
msgid "Selected books have no formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:108
#: /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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:127
msgid "Multiple Books Selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:128
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 "
@@ -4757,11 +4839,11 @@ msgid ""
"continue?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:137
msgid "Cannot open folder"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:182
msgid "%s has no available formats."
msgstr ""
@@ -4786,7 +4868,7 @@ 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:838
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:841
msgid "No books"
msgstr ""
@@ -4924,8 +5006,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:173
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:175
@@ -4987,8 +5070,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:160
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:384
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1186
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1192
msgid "Path"
msgstr ""
@@ -4998,17 +5081,17 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:153
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:139
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /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/book_details.py:29
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:997
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1189
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
msgid "Collections"
msgstr ""
@@ -5018,25 +5101,25 @@ msgid "Click to open"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:57
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1199
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:375
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:381
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1201
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
#: /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/widgets.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:350
msgid "None"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:158
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:243
msgid "Paste Cover"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:244
msgid "Copy Cover"
msgstr ""
@@ -5086,7 +5169,7 @@ msgstr ""
msgid "output"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:42
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:295
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:32
@@ -5094,7 +5177,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:33
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:38
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:44
#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:112
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:120
@@ -5109,7 +5192,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:33
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:42
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:56
+#: /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
@@ -5117,14 +5200,14 @@ msgstr ""
#: /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
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:130
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:139
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
@@ -5140,68 +5223,36 @@ msgstr ""
msgid "Form"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:78
msgid "Bib file encoding:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:79
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:43
msgid "Fields to include in output:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:92
-msgid "ascii/LaTeX"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:80
msgid "Encoding configuration (change if you have errors) :"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:94
-msgid "strict"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:95
-msgid "replace"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:96
-msgid "ignore"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:97
-msgid "backslashreplace"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:81
msgid "BibTeX entry type:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:99
-msgid "mixed"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:100
-msgid "misc"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:101
-msgid "book"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:82
msgid "Create a citation tag?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:83
msgid "Add files path with formats?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:84
msgid "Expression to form the BibTeX citation tag:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:85
msgid ""
"Some explanation about this template:\n"
" -The fields availables are 'author_sort', 'authors', 'id',\n"
@@ -5482,6 +5533,7 @@ 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:139
msgid "Normal"
@@ -5720,10 +5772,14 @@ msgstr ""
msgid "FB2 Output"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:39
+#: /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 ""
@@ -6315,7 +6371,7 @@ 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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
msgid "Test"
msgstr ""
@@ -6347,25 +6403,25 @@ msgstr ""
msgid "Preview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:15
+#: /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:28
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:34
+#: /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:71
+#: /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:72
+#: /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 ""
@@ -6470,19 +6526,19 @@ msgstr ""
msgid "The XPath expression %s is invalid."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:57
+#: /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:58
+#: /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:59
+#: /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:60
+#: /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 "
@@ -6490,6 +6546,10 @@ msgid ""
"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"
@@ -6712,11 +6772,11 @@ msgid ""
"href=\"http://calibre-ebook.com/user_manual/xpath.html\">XPath Tutorial."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:118
+#: /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:149
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:158
msgid "Cover browser could not be loaded"
msgstr ""
@@ -6725,11 +6785,11 @@ msgstr ""
#: /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:293
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:557
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:598
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:621
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:680
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
@@ -6744,66 +6804,66 @@ 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:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:637
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:630
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
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:659
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:667
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:661
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Clear '%s'"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:289
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:297
msgid " index:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:366
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:512
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:520
msgid "Apply changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:705
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:713
msgid "Remove series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:716
msgid "Automatically number books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:711
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:719
msgid "Force numbers to start with "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:782
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:790
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:826
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:834
msgid "Remove all tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:846
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:854
msgid "tags to add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:852
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:861
msgid "tags to remove"
msgstr ""
@@ -6896,97 +6956,97 @@ msgstr ""
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156
-#: /home/kovid/work/calibre/src/calibre/gui2/email.py:299
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:307
msgid "No suitable formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:644
+#: /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:695
+#: /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:696
+#: /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:739
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
msgid "Device: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:741
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
msgid " detected."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:839
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842
msgid "selected to send"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:858
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
msgid "%i of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864
msgid "0 of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "Choose format to send to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:870
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873
msgid "No device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
msgid "Cannot send: No device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
msgid "No card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
msgid "Cannot send: Device has no storage card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:935
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1018
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:943
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1026
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1160
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:964
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:972
msgid "Sending catalogs to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1063
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1073
msgid "Sending news to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1117
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1127
msgid "Sending books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1157
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167
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:1229
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1239
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1230
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1240
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:156
msgid "Hide column %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
msgid "Sort on %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:162
msgid "Ascending"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165
msgid "Descending"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:177
msgid "Change text alignment for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Left"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Right"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:180
msgid "Center"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:199
msgid "Show column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:211
msgid "Restore default layout"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:783
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:790
msgid ""
"Dropping onto a device is not supported. First add the book to the calibre "
"library."
@@ -9903,7 +10011,7 @@ msgid "No matches for the search phrase %s were found."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:483
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:503
msgid "No matches found"
msgstr ""
@@ -9920,12 +10028,12 @@ 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:539
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:558
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:540
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:559
msgid "Previous Page"
msgstr ""
@@ -10075,21 +10183,21 @@ msgstr ""
msgid "%s is already running."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:20
+#: /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:61
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:113
msgid "&Preferences"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:114
msgid "&Quit"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:138
msgid "Unhandled exception"
msgstr ""
@@ -10164,7 +10272,7 @@ msgid "%s %s for: %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:291
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:163
msgid "Done"
msgstr ""
@@ -10173,7 +10281,7 @@ msgid "Successfully downloaded metadata for %d out of %d books"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:294
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:757
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:765
msgid "Details"
msgstr ""
@@ -10293,17 +10401,22 @@ msgstr ""
msgid "&Configure metadata from file name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
-msgid "High"
-msgstr ""
-
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:141
msgid "Low"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
+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:164
msgid "Confirmation dialogs have all been reset"
msgstr ""
@@ -10420,7 +10533,7 @@ msgstr ""
msgid "Add &custom column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion.py:39
+#: /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."
@@ -10461,7 +10574,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:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:140
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:145
msgid "Yes/No"
msgstr ""
@@ -10479,10 +10592,14 @@ msgid "Quick create:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149
msgid "Modified Date"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
+msgid "People's names"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
msgid "Number"
msgstr ""
@@ -10508,94 +10625,94 @@ msgstr ""
msgid "Selected column is not a user-defined column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:146
msgid "My Tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:147
msgid "My Series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148
msgid "My Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150
+msgid "People"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:179
msgid "No lookup name was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:183
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:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:186
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:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:196
msgid "No column heading was provided"
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:206
msgid "The lookup name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:218
msgid "The heading %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:221
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
msgid "You must enter a template for composite columns"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:238
msgid "You must enter at least one value for enumeration columns"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:233
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:242
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:237
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:246
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:184
+#: /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:185
+#: /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:186
+#: /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:187
+#: /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:188
+#: /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:189
+#: /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:190
-msgid "Show checkmarks"
-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: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 "
@@ -10603,7 +10720,20 @@ msgid ""
"Everything else will show nothing."
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: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 ""
"
to this email "
"address (provided it is in one of the listed formats)."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:115
msgid "new email address"
msgstr ""
@@ -10731,91 +10876,91 @@ msgstr ""
msgid "Wide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Medium"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Small"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
msgid "Large"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Always"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Automatic"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
msgid "Never"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "By first letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
msgid "Partitioned"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:140
msgid "User Interface &layout (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:141
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
msgid "Choose &language (requires restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
msgid "Show &average ratings in the tags browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
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:148
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
msgid "Disable &animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
msgid "Enable system &tray icon (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
msgid "Show &splash screen at startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:148
msgid "Disable ¬ifications in system tray"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
msgid "Use &Roman numerals for series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
msgid "Show cover &browser in a separate window (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
msgid "Tags browser category &partitioning method:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
msgid ""
"Choose how tag browser subcategories are displayed when\n"
"there are more items than the limit. Select by first\n"
@@ -10824,22 +10969,22 @@ msgid ""
"if you never want subcategories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:157
msgid "&Collapse when more items than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:158
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:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
msgid "Categories with &hierarchical items:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
msgid ""
"A comma-separated list of columns in which items containing\n"
"periods are displayed in the tag browser trees. For example, if\n"
@@ -10849,64 +10994,60 @@ 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:170
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:167
msgid "&Toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:168
msgid "&Icon size:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:169
msgid "Show &text under icons:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:173
-msgid "&Split the toolbar into two toolbars"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:170
msgid "Interface font:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
msgid "Change &font (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:228
#: /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:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:235
msgid "Restore &defaults"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:236
msgid "Save changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:237
msgid "Cancel and return to overview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:293
msgid "Restoring to defaults not supported for"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:328
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:326
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:331
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:331
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:336
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:132
msgid "Restart needed"
msgstr ""
@@ -11395,7 +11536,7 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:379
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:382
msgid "Failed to start content server"
msgstr ""
@@ -11632,35 +11773,39 @@ msgstr ""
msgid "Choose library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
msgid "The main toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:211
+msgid "The optional second toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:212
msgid "The main toolbar when a device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:213
msgid "The context menu for the books in the calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:215
msgid "The context menu for the books on the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:249
msgid "Cannot add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:245
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:250
msgid "Cannot add the actions %s to this location"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:268
msgid "Cannot remove"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:264
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:269
msgid "Cannot remove the actions %s from this location"
msgstr ""
@@ -11757,8 +11902,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:93
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:277
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:644
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:277
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:652
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
msgid "Search"
msgstr ""
@@ -11850,161 +11995,166 @@ msgstr ""
msgid "&Alternate shortcut:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:316
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:366
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:403
msgid "Rename %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:320
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:348
msgid "Edit sort for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:355
msgid "Add %s to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:368
msgid "Children of %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:347
-msgid "Remove %s from category %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:353
-msgid "Search for %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:358
-msgid "Search for everything but %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:370
-msgid "Add sub-category to %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
-msgid "Delete user category %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:379
-msgid "Hide category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:378
+msgid "Delete search %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
-msgid "Show category"
+msgid "Remove %s from category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:393
-msgid "Search for books in category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:390
+msgid "Search for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399
-msgid "Search for books not in category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:395
+msgid "Search for everything but %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:408
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:413
-msgid "Manage %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:407
+msgid "Add sub-category to %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:411
+msgid "Delete user category %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:416
+msgid "Hide category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:420
+msgid "Show category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:430
+msgid "Search for books in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:436
+msgid "Search for books not in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:445
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:450
+msgid "Manage %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:453
msgid "Manage Saved Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:424
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:428
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:461
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:465
msgid "Manage User Categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:435
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:472
msgid "Show all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:438
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:475
msgid "Change sub-categorization scheme"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:750
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:791
msgid "The grouped search term name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1015
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1063
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:1020
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1068
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:1103
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:412
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1151
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:413
msgid "Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1331
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1351
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1360
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1405
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1414
msgid "Rename user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1332
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1386
msgid "You cannot use periods in the name when renaming user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1352
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1361
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1406
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1415
msgid "The name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1384
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1438
msgid "Duplicate search name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "The saved search name %s is already used."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1786
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
msgid "New Category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1837
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1840
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1892
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1895
msgid "Delete user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1838
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1893
msgid "%s is not a user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1896
msgid "%s contains items. Do you really want to delete it?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1862
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1917
msgid "Remove category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1863
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1918
msgid "User category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1882
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1937
msgid "Add to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1883
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1938
msgid "A user category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2006
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2061
msgid "Find item in tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2009
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
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"
@@ -12014,60 +12164,60 @@ msgid ""
"containing the text \"foo\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2018
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2073
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2022
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2077
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2023
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2078
msgid "Find the first/next matching item"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2030
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083
msgid "Collapse all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2051
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2107
msgid "No More Matches.
\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:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12374,7 +12517,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12452,36 +12595,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12549,77 +12692,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12694,27 +12841,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12849,65 +12996,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13017,54 +13177,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13867,33 +14027,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:171
+#: /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:176
+#: /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:269
+#: /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:275
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:273
msgid "By "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:276
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:274
msgid "Books sorted by "
msgstr ""
@@ -14323,40 +14483,43 @@ msgid "Read metadata from files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/config.py:717
-msgid "The priority of worker processes"
+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.py:719
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:722
msgid "Swap author first and last names when reading metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:721
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:724
msgid "Add new formats to existing book records"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:723
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:726
msgid "Tags to apply to books added to the library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:727
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
msgid "List of named saved searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:728
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:731
msgid "User-created tag browser categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:733
msgid "How and when calibre updates metadata on the device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:732
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:735
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.py:737
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:740
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 "
@@ -14887,16 +15050,16 @@ msgstr ""
msgid "Control email delivery"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:119
+#: /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:141
+#: /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:159
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:186
+#: /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 ""
@@ -14927,118 +15090,118 @@ msgstr ""
msgid "Unknown News Source"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:629
+#: /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:735
+#: /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:737
+#: /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:743
+#: /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:745
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:746
msgid " from "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:747
+#: /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:842
+#: /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:844
+#: /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:846
+#: /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:869
+#: /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:874
+#: /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:883
+#: /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:885
+#: /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:965
+#: /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:981
+#: /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:990
+#: /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:999
+#: /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:1045
+#: /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:1213
+#: /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:1284
+#: /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:1295
+#: /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:1312
+#: /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:1459
+#: /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:1474
+#: /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:47
+#: /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:74
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:83
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:185
+#: /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:85
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:186
+#: /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 ""
diff --git a/src/calibre/translations/en_CA.po b/src/calibre/translations/en_CA.po
index 40ad65faf7..f9e52cbea5 100644
--- a/src/calibre/translations/en_CA.po
+++ b/src/calibre/translations/en_CA.po
@@ -7,32 +7,32 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME 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:553
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:564
msgid "Search pattern (regular expression) to be replaced with sr1-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:558
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:569
msgid "Replacement to replace the text found with sr1-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:562
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:573
msgid "Search pattern (regular expression) to be replaced with sr2-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:567
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:578
msgid "Replacement to replace the text found with sr2-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:571
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:582
msgid "Search pattern (regular expression) to be replaced with sr3-replace."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:587
msgid "Replacement to replace the text found with sr3-search."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:678
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:689
msgid "Could not find an ebook inside the archive"
msgstr "Could not find an ebook inside the archive"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:736
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:747
msgid "Values of series index and rating must be numbers. Ignoring"
msgstr "Values of series index and rating must be numbers. Ignoring"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:743
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:754
msgid "Failed to parse date/time"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:898
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:909
msgid "Converting input to HTML..."
msgstr "Converting input to HTML…"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:925
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:936
msgid "Running transforms on ebook..."
msgstr "Running transforms on ebook…"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1015
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1032
msgid "Creating"
msgstr "Creating"
@@ -2196,7 +2240,7 @@ msgstr ""
msgid "Do not insert a Table of Contents at the beginning of the book."
msgstr "Do not insert a Table of Contents at the beginning of the book."
-#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:22
+#: /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 "
@@ -2207,6 +2251,10 @@ msgid ""
"of Contents)."
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 "
@@ -2581,105 +2629,105 @@ msgstr ""
msgid "TEMPLATE ERROR"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "No"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "Yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:658
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:675
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:993
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:426
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1018
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:331
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:576
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:574
msgid "Title"
msgstr "Title"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:659
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:676
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:994
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:431
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019
msgid "Author(s)"
msgstr "Author(s)"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:660
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:677
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
msgid "Publisher"
msgstr "Publisher"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:661
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:678
#: /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:662
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:679
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:247
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:129
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:79
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:389
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1200
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1206
#: /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:664
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:681
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:31
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:377
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1196
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1202
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:753
+#: /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:666
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:683
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1211
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /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:667
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:684
msgid "Language"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:669
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1188
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:686
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194
msgid "Timestamp"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:671
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:688
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69
#: /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:673
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:690
msgid "Rights"
msgstr ""
@@ -2830,7 +2878,7 @@ msgid "Convert comments downloaded from %s to plain text"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:145
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:157
msgid "Downloads metadata from Google Books"
msgstr ""
@@ -2961,7 +3009,7 @@ msgstr ""
msgid "The publisher of the book to search for."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64
msgid ""
"\n"
"%prog [options] ISBN\n"
@@ -3033,19 +3081,43 @@ msgstr ""
msgid "Cover saved to file "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1346
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1484
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1356
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
msgid "Cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:16
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:280
msgid "Downloads metadata from Amazon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:22
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:287
+msgid "US"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:288
+msgid "France"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:289
+msgid "Germany"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:290
+msgid "UK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:375
+msgid "Amazon timed out. Try again later."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:94
msgid "Metadata source"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/openlibrary.py:15
+msgid "Downloads metadata from The Open Library"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22
msgid "Modify images to meet Palm device size limitations."
msgstr ""
@@ -3088,70 +3160,70 @@ msgstr ""
msgid "This is an Amazon Topaz book. It cannot be processed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1485
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
msgid "Title Page"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1486
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
#: /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:1487
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
msgid "Index"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1488
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
msgid "Glossary"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1489
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
msgid "Acknowledgements"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1490
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
msgid "Bibliography"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
msgid "Colophon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
msgid "Copyright"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
msgid "Dedication"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1501
msgid "Epigraph"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1502
msgid "Foreword"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1503
msgid "List of Illustrations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1504
msgid "List of Tables"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1505
msgid "Notes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1506
msgid "Preface"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1507
msgid "Main Text"
msgstr ""
@@ -3171,9 +3243,9 @@ 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:71
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:751
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:759
msgid "Rating"
msgstr ""
@@ -3337,6 +3409,7 @@ 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 ""
@@ -3459,7 +3532,7 @@ msgstr ""
msgid "Table of Contents:"
msgstr "Table of Contents:"
-#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:271
+#: /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"
@@ -3601,135 +3674,139 @@ msgid ""
"are always removed with plain text output."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:72
msgid "Send file to storage card instead of main memory by default"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:74
msgid "Confirm before deleting"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:76
msgid "Main window geometry"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:77
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:78
msgid "Notify when a new version is available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:80
msgid "Use Roman numerals for series number"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:82
msgid "Sort tags list by name, popularity, or rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:84
+msgid "Match tags by any or all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:86
msgid "Number of covers to show in the cover browsing mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:88
msgid "Defaults for conversion to LRF"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
msgid "Options for the LRF ebook viewer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
msgid "Formats that are viewed using the internal viewer"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
msgid "Columns to be displayed in the book list"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:96
msgid "Automatically launch content server on application startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
msgid "Oldest news kept in database"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:98
msgid "Show system tray icon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:100
msgid "Upload downloaded news to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:102
msgid "Delete books from library after uploading to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:104
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:103
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:106
msgid "Disable notifications from the system tray icon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:108
msgid "Default action to perform when send to device button is clicked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113
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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:116
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:131
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:134
msgid "Maximum number of waiting worker processes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136
msgid "Download social metadata (tags/rating/etc.)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138
msgid "Overwrite author and title with new metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:101
msgid "Automatically download the cover, if available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:142
msgid "Limit max simultaneous jobs to number of CPUs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144
msgid "The layout of the user interface"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:146
msgid "Show the average rating per item indication in the tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:148
msgid "Disable UI animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153
msgid "tag browser categories not to display"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:419
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:423
msgid "Choose Files"
msgstr ""
@@ -3894,8 +3971,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:371
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:28
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:138
msgid "No book selected"
msgstr ""
@@ -3937,8 +4014,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92
msgid "No books selected"
msgstr ""
@@ -3998,8 +4075,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:167
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:126
+#: /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 ""
@@ -4089,6 +4166,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:430
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:274
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr ""
@@ -4134,8 +4212,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:689
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:963
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:972
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:276
@@ -4169,7 +4247,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
#: /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:782
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:789
msgid "Not allowed"
msgstr ""
@@ -4200,7 +4278,7 @@ msgid "Bulk convert"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:86
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:507
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517
msgid "Cannot convert"
msgstr ""
@@ -4208,7 +4286,7 @@ msgstr ""
msgid "Starting conversion of %d book(s)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:171
msgid "Empty output file, probably the conversion process crashed"
msgstr ""
@@ -4389,7 +4467,7 @@ 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:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:96
msgid "Email to"
msgstr ""
@@ -4397,32 +4475,32 @@ msgstr ""
msgid "Email to and delete from library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:89
+#: /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:104
+#: /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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "D"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /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
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:142
msgid "Connect/share"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:84
msgid "Stopping"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:176
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85
msgid "Stopping server, this could take upto a minute, please wait..."
msgstr ""
@@ -4509,26 +4587,26 @@ msgid "Downloading {0} for {1} book(s)"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:189
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:224
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:229
msgid "Cannot merge books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:230
msgid "At least two books must be selected for merging"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:233
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:239
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:241
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -4536,7 +4614,7 @@ msgid ""
"changed.
Please confirm you want to proceed."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:253
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 "
@@ -4548,7 +4626,7 @@ msgid ""
"calibre library.
Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:269
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -4559,19 +4637,19 @@ msgid ""
"Are you sure you want to proceed?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /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:17
+#: /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:52
+#: /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:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:83
msgid " fetched."
msgstr ""
@@ -4636,7 +4714,7 @@ msgid "Ctrl+P"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:206
msgid "Run welcome wizard"
msgstr ""
@@ -4644,11 +4722,11 @@ msgstr ""
msgid "Restart in debug mode"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:40
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
msgid "Cannot configure while there are running jobs."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:45
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr ""
@@ -4721,7 +4799,7 @@ msgid "Click the show details button to see which ones."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:758
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:766
msgid "Show book details"
msgstr ""
@@ -4808,36 +4886,40 @@ msgstr ""
msgid "View specific format"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:38
+msgid "Read a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:181
msgid "Cannot view"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:119
msgid "Format unavailable"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:106
msgid "Selected books have no formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:108
#: /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:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
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:120
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:127
msgid "Multiple Books Selected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:128
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 "
@@ -4845,11 +4927,11 @@ msgid ""
"continue?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:137
msgid "Cannot open folder"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:182
msgid "%s has no available formats."
msgstr ""
@@ -4874,7 +4956,7 @@ 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:838
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:841
msgid "No books"
msgstr ""
@@ -5012,8 +5094,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:173
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:175
@@ -5075,8 +5158,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:160
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:384
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1186
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1192
msgid "Path"
msgstr ""
@@ -5086,17 +5169,17 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:153
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:139
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /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/book_details.py:29
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:997
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1189
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
msgid "Collections"
msgstr ""
@@ -5106,25 +5189,25 @@ msgid "Click to open"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:57
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1199
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:375
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:381
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1201
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
#: /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/widgets.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:350
msgid "None"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:158
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:243
msgid "Paste Cover"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:244
msgid "Copy Cover"
msgstr ""
@@ -5174,7 +5257,7 @@ msgstr ""
msgid "output"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:42
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:295
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:32
@@ -5182,7 +5265,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:33
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:38
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:44
#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:112
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:120
@@ -5197,7 +5280,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:33
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:42
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:56
+#: /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
@@ -5205,14 +5288,14 @@ msgstr ""
#: /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
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:130
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:139
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
@@ -5228,68 +5311,36 @@ msgstr ""
msgid "Form"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:78
msgid "Bib file encoding:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:79
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:43
msgid "Fields to include in output:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:92
-msgid "ascii/LaTeX"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:80
msgid "Encoding configuration (change if you have errors) :"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:94
-msgid "strict"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:95
-msgid "replace"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:96
-msgid "ignore"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:97
-msgid "backslashreplace"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:81
msgid "BibTeX entry type:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:99
-msgid "mixed"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:100
-msgid "misc"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:101
-msgid "book"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:82
msgid "Create a citation tag?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:83
msgid "Add files path with formats?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:84
msgid "Expression to form the BibTeX citation tag:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:85
msgid ""
"Some explanation about this template:\n"
" -The fields availables are 'author_sort', 'authors', 'id',\n"
@@ -5570,6 +5621,7 @@ 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:139
msgid "Normal"
@@ -5808,10 +5860,14 @@ msgstr ""
msgid "FB2 Output"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:39
+#: /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 ""
@@ -6403,7 +6459,7 @@ 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:122
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
msgid "Test"
msgstr ""
@@ -6435,25 +6491,25 @@ msgstr ""
msgid "Preview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:15
+#: /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:28
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:34
+#: /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:71
+#: /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:72
+#: /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 ""
@@ -6558,19 +6614,19 @@ msgstr ""
msgid "The XPath expression %s is invalid."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:57
+#: /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:58
+#: /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:59
+#: /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:60
+#: /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 "
@@ -6578,6 +6634,10 @@ msgid ""
"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"
@@ -6800,11 +6860,11 @@ msgid ""
"href=\"http://calibre-ebook.com/user_manual/xpath.html\">XPath Tutorial."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:118
+#: /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:149
+#: /home/kovid/work/calibre/src/calibre/gui2/cover_flow.py:158
msgid "Cover browser could not be loaded"
msgstr ""
@@ -6813,11 +6873,11 @@ msgstr ""
#: /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:293
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:557
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:598
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:621
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:672
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:301
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:565
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:606
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:680
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:306
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505
@@ -6832,66 +6892,66 @@ 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:629
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:637
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:630
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:638
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:659
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:667
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:661
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:669
msgid "Clear '%s'"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:289
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:297
msgid " index:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:358
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:366
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:512
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:520
msgid "Apply changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:705
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:713
msgid "Remove series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:708
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:716
msgid "Automatically number books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:711
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:719
msgid "Force numbers to start with "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:782
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:790
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:826
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:834
msgid "Remove all tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:846
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:854
msgid "tags to add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:852
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:861
msgid "tags to remove"
msgstr ""
@@ -6984,97 +7044,97 @@ msgstr ""
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:628
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1156
-#: /home/kovid/work/calibre/src/calibre/gui2/email.py:299
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:631
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1166
+#: /home/kovid/work/calibre/src/calibre/gui2/email.py:307
msgid "No suitable formats"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:644
+#: /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:695
+#: /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:696
+#: /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:739
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:742
msgid "Device: "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:741
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:744
msgid " detected."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:839
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:842
msgid "selected to send"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:858
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
msgid "%i of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:861
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:864
msgid "0 of %i Books"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:865
msgid "Choose format to send to device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:870
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:873
msgid "No device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:871
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
msgid "Cannot send: No device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:874
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:877
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:881
msgid "No card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:875
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:879
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:878
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:882
msgid "Cannot send: Device has no storage card"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:935
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1018
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1150
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:943
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1026
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1160
msgid "Auto convert the following books before uploading to the device?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:964
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:972
msgid "Sending catalogs to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1063
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1073
msgid "Sending news to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1117
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1127
msgid "Sending books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1157
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1167
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:1229
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1239
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1230
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:1240
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:156
msgid "Hide column %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
msgid "Sort on %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:162
msgid "Ascending"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:165
msgid "Descending"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:176
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:177
msgid "Change text alignment for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Left"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:178
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
msgid "Right"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:179
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:180
msgid "Center"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:198
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:199
msgid "Show column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:211
msgid "Restore default layout"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:783
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:790
msgid ""
"Dropping onto a device is not supported. First add the book to the calibre "
"library."
@@ -9991,7 +10099,7 @@ msgid "No matches for the search phrase %s were found."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/lrf_renderer/main.py:160
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:483
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:503
msgid "No matches found"
msgstr ""
@@ -10008,12 +10116,12 @@ 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:539
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:558
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:540
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:559
msgid "Previous Page"
msgstr ""
@@ -10163,21 +10271,21 @@ msgstr ""
msgid "%s is already running."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:20
+#: /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:61
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:113
msgid "&Preferences"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:114
msgid "&Quit"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/main_window.py:138
msgid "Unhandled exception"
msgstr ""
@@ -10252,7 +10360,7 @@ msgid "%s %s for: %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:291
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:163
msgid "Done"
msgstr ""
@@ -10261,7 +10369,7 @@ msgid "Successfully downloaded metadata for %d out of %d books"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:294
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:757
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:765
msgid "Details"
msgstr ""
@@ -10381,17 +10489,22 @@ msgstr ""
msgid "&Configure metadata from file name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
-msgid "High"
-msgstr ""
-
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:36
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:141
msgid "Low"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:140
+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:164
msgid "Confirmation dialogs have all been reset"
msgstr ""
@@ -10508,7 +10621,7 @@ msgstr ""
msgid "Add &custom column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion.py:39
+#: /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."
@@ -10549,7 +10662,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:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:140
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:145
msgid "Yes/No"
msgstr ""
@@ -10567,10 +10680,14 @@ msgid "Quick create:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:64
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:149
msgid "Modified Date"
msgstr ""
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
+msgid "People's names"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71
msgid "Number"
msgstr ""
@@ -10596,94 +10713,94 @@ msgstr ""
msgid "Selected column is not a user-defined column"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:146
msgid "My Tags"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:147
msgid "My Series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:148
msgid "My Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:150
+msgid "People"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:179
msgid "No lookup name was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:183
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:178
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:186
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:188
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:196
msgid "No column heading was provided"
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:206
msgid "The lookup name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:218
msgid "The heading %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:221
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
msgid "You must enter a template for composite columns"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:229
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:238
msgid "You must enter at least one value for enumeration columns"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:233
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:242
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:237
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:246
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:184
+#: /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:185
+#: /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:186
+#: /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:187
+#: /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:188
+#: /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:189
+#: /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:190
-msgid "Show checkmarks"
-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: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 "
@@ -10691,7 +10808,20 @@ msgid ""
"Everything else will show nothing."
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: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 ""
"
to this email "
"address (provided it is in one of the listed formats)."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:115
msgid "new email address"
msgstr ""
@@ -10819,91 +10964,91 @@ msgstr ""
msgid "Wide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Medium"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:52
msgid "Small"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:54
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:53
msgid "Large"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Always"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:56
msgid "Automatic"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:57
msgid "Never"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "By first letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:60
msgid "Disabled"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:62
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel.py:61
msgid "Partitioned"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:140
msgid "User Interface &layout (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:141
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
msgid "Choose &language (requires restart):"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:143
msgid "Show &average ratings in the tags browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:144
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:148
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:145
msgid "Disable &animations"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:146
msgid "Enable system &tray icon (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:147
msgid "Show &splash screen at startup"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:148
msgid "Disable ¬ifications in system tray"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:149
msgid "Use &Roman numerals for series"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:153
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:150
msgid "Show cover &browser in a separate window (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:154
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:151
msgid "Tags browser category &partitioning method:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:155
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:152
msgid ""
"Choose how tag browser subcategories are displayed when\n"
"there are more items than the limit. Select by first\n"
@@ -10912,22 +11057,22 @@ msgid ""
"if you never want subcategories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:157
msgid "&Collapse when more items than:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:158
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:163
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:160
msgid "Categories with &hierarchical items:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:161
msgid ""
"A comma-separated list of columns in which items containing\n"
"periods are displayed in the tag browser trees. For example, if\n"
@@ -10937,64 +11082,60 @@ 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:170
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:167
msgid "&Toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:168
msgid "&Icon size:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:172
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:169
msgid "Show &text under icons:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:173
-msgid "&Split the toolbar into two toolbars"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:170
msgid "Interface font:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:171
msgid "Change &font (needs restart)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:223
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:228
#: /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:230
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:235
msgid "Restore &defaults"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:236
msgid "Save changes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:232
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:237
msgid "Cancel and return to overview"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:293
msgid "Restoring to defaults not supported for"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:323
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:328
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:326
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:331
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:331
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:336
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:132
msgid "Restart needed"
msgstr ""
@@ -11483,7 +11624,7 @@ msgid ""
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:75
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:379
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:382
msgid "Failed to start content server"
msgstr ""
@@ -11720,35 +11861,39 @@ msgstr ""
msgid "Choose library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:206
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
msgid "The main toolbar"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:207
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:211
+msgid "The optional second toolbar"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:212
msgid "The main toolbar when a device is connected"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:208
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:213
msgid "The context menu for the books in the calibre library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:210
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:215
msgid "The context menu for the books on the device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:249
msgid "Cannot add"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:245
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:250
msgid "Cannot add the actions %s to this location"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:263
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:268
msgid "Cannot remove"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:264
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:269
msgid "Cannot remove the actions %s from this location"
msgstr ""
@@ -11845,8 +11990,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:93
#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:277
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:644
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:277
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:652
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:280
msgid "Search"
msgstr ""
@@ -11938,161 +12083,166 @@ msgstr ""
msgid "&Alternate shortcut:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:316
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:366
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:403
msgid "Rename %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:320
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:348
msgid "Edit sort for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:327
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:355
msgid "Add %s to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:340
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:368
msgid "Children of %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:347
-msgid "Remove %s from category %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:353
-msgid "Search for %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:358
-msgid "Search for everything but %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:370
-msgid "Add sub-category to %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:374
-msgid "Delete user category %s"
-msgstr ""
-
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:379
-msgid "Hide category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:378
+msgid "Delete search %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:383
-msgid "Show category"
+msgid "Remove %s from category %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:393
-msgid "Search for books in category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:390
+msgid "Search for %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:399
-msgid "Search for books not in category %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:395
+msgid "Search for everything but %s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:408
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:413
-msgid "Manage %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:407
+msgid "Add sub-category to %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:411
+msgid "Delete user category %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:416
+msgid "Hide category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:420
+msgid "Show category"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:430
+msgid "Search for books in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:436
+msgid "Search for books not in category %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:445
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:450
+msgid "Manage %s"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:453
msgid "Manage Saved Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:424
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:428
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:461
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:465
msgid "Manage User Categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:435
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:472
msgid "Show all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:438
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:475
msgid "Change sub-categorization scheme"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:750
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:791
msgid "The grouped search term name is \"{0}\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1015
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1063
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:1020
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1068
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:1103
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:412
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1151
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:413
msgid "Searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1331
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1351
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1360
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1405
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1414
msgid "Rename user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1332
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1386
msgid "You cannot use periods in the name when renaming user categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1352
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1361
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1406
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1415
msgid "The name %s is already used"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1384
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1438
msgid "Duplicate search name"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1385
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1439
msgid "The saved search name %s is already used."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1786
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
msgid "New Category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1837
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1840
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1892
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1895
msgid "Delete user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1838
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1893
msgid "%s is not a user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1841
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1896
msgid "%s contains items. Do you really want to delete it?"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1862
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1917
msgid "Remove category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1863
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1918
msgid "User category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1882
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1937
msgid "Add to user category"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1883
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:1938
msgid "A user category %s does not exist"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2006
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2061
msgid "Find item in tag browser"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2009
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2064
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"
@@ -12102,60 +12252,60 @@ msgid ""
"containing the text \"foo\""
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2018
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2073
msgid "ALT+f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2022
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2077
msgid "F&ind"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2023
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2078
msgid "Find the first/next matching item"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2030
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2083
msgid "Collapse all categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2051
+#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:2107
msgid "No More Matches.
\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:604
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:584
msgid "Active jobs"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:671
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:653
msgid ""
"will keep running in the system tray. To close it, choose Quit in the "
"context menu of the system tray."
@@ -12462,7 +12605,7 @@ 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:769
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:783
msgid "Remember last used window size"
msgstr ""
@@ -12540,36 +12683,36 @@ msgid ""
"clicking outside the shortcut editing box."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:515
+#: /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:518
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
#: /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:530
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:549
msgid "Next Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:531
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:550
msgid "Previous Section"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:533
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:552
msgid "Document Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:553
msgid "Document End"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:536
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:555
msgid "Section Start"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:537
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:556
msgid "Section End"
msgstr ""
@@ -12637,77 +12780,81 @@ msgstr ""
msgid "Search for text in book"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286
+#: /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:341
+#: /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:447
+#: /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:448
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:468
msgid "Ebooks"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:484
+#: /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:527
+#: /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:565
+#: /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:596
+#: /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:600
+#: /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:601
+#: /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:611
+#: /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:651
+#: /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:663
+#: /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:756
+#: /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:763
+#: /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:766
+#: /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:771
+#: /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:777
+#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:791
msgid ""
"%prog [options] file\n"
"\n"
@@ -12782,27 +12929,27 @@ msgstr ""
msgid "Print eBook"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:410
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:418
msgid "Change Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:413
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:421
msgid "Swap Case"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:953
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:961
msgid "Drag to resize"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:988
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:996
msgid "Show"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:995
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1003
msgid "Hide"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1032
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:1040
msgid "Toggle"
msgstr ""
@@ -12937,65 +13084,78 @@ msgstr ""
msgid "Mail successfully sent"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:95
+#: /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:96
+#: /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:139
+#: /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:150
+#: /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:152
+#: /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:159
+#: /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:160
+#: /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:161
+#: /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:179
+#: /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:186
+#: /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:201
-#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:208
+#: /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:202
+#: /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:209
-msgid "You must set the username and password for the mail server."
+#: /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
@@ -13105,54 +13265,54 @@ msgstr ""
msgid "Turn on the &content server"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
msgid "checked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:153
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:557
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:567
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:161
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:565
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:575
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "yes"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
msgid "unchecked"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:155
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:554
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:564
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:163
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:562
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:572
#: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:192
msgid "no"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:347
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:355
msgid "today"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:350
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:358
msgid "yesterday"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:353
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:361
msgid "thismonth"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:356
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:357
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:364
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:365
msgid "daysago"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "blank"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/caches.py:561
+#: /home/kovid/work/calibre/src/calibre/library/caches.py:569
msgid "empty"
msgstr ""
@@ -13955,33 +14115,33 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:586
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:591
msgid "No label was provided"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:588
+#: /home/kovid/work/calibre/src/calibre/library/custom_columns.py:593
msgid ""
"The label must contain only lower case letters, digits and underscores, and "
"start with a letter"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:65
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:66
msgid "%sAverage rating is %3.1f"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007
msgid "Main"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/database2.py:2965
+#: /home/kovid/work/calibre/src/calibre/library/database2.py:3051
msgid "
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:171
+#: /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:176
+#: /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:269
+#: /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:275
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:273
msgid "By "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:276
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:274
msgid "Books sorted by "
msgstr ""
@@ -14411,40 +14571,43 @@ msgid "Read metadata from files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/config.py:717
-msgid "The priority of worker processes"
+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.py:719
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:722
msgid "Swap author first and last names when reading metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:721
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:724
msgid "Add new formats to existing book records"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:723
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:726
msgid "Tags to apply to books added to the library"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:727
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
msgid "List of named saved searches"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:728
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:731
msgid "User-created tag browser categories"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:730
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:733
msgid "How and when calibre updates metadata on the device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/utils/config.py:732
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:735
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.py:737
+#: /home/kovid/work/calibre/src/calibre/utils/config.py:740
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 "
@@ -14975,16 +15138,16 @@ msgstr ""
msgid "Control email delivery"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:119
+#: /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:141
+#: /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:159
-#: /home/kovid/work/calibre/src/calibre/web/feeds/__init__.py:186
+#: /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 ""
@@ -15015,118 +15178,118 @@ msgstr ""
msgid "Unknown News Source"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:629
+#: /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:735
+#: /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:737
+#: /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:743
+#: /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:745
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:746
msgid " from "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:747
+#: /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:842
+#: /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:844
+#: /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:846
+#: /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:869
+#: /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:874
+#: /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:883
+#: /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:885
+#: /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:965
+#: /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:981
+#: /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:990
+#: /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:999
+#: /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:1045
+#: /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:1213
+#: /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:1284
+#: /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:1295
+#: /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:1312
+#: /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:1459
+#: /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:1474
+#: /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:47
+#: /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:74
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:83
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:185
+#: /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:85
-#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:186
+#: /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 ""
@@ -15219,6 +15382,9 @@ msgstr ""
msgid "Do not download CSS stylesheets."
msgstr ""
+#~ msgid "No valid plugin found in "
+#~ msgstr "No valid plugin found in "
+
#~ msgid "Communicate with the Kindle 2 eBook reader."
#~ msgstr "Communicate with the Amazon Kindle 2 eBook reader."
diff --git a/src/calibre/translations/en_GB.po b/src/calibre/translations/en_GB.po
index 34595e1ade..d5a89e2b8e 100644
--- a/src/calibre/translations/en_GB.po
+++ b/src/calibre/translations/en_GB.po
@@ -7,32 +7,32 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME or
tags. The tags are "
"renumbered to prevent splitting in the middle of chapter headings."
@@ -2230,51 +2274,51 @@ msgstr ""
"Looks for occurrences of sequential
or
tags. The tags are "
"renumbered to prevent splitting in the middle of chapter headings."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:553
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:564
msgid "Search pattern (regular expression) to be replaced with sr1-replace."
msgstr "Search pattern (regular expression) to be replaced with sr1-replace."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:558
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:569
msgid "Replacement to replace the text found with sr1-search."
msgstr "Replacement to replace the text found with sr1-search."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:562
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:573
msgid "Search pattern (regular expression) to be replaced with sr2-replace."
msgstr "Search pattern (regular expression) to be replaced with sr2-replace."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:567
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:578
msgid "Replacement to replace the text found with sr2-search."
msgstr "Replacement to replace the text found with sr2-search."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:571
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:582
msgid "Search pattern (regular expression) to be replaced with sr3-replace."
msgstr "Search pattern (regular expression) to be replaced with sr3-replace."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:587
msgid "Replacement to replace the text found with sr3-search."
msgstr "Replacement to replace the text found with sr3-search."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:678
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:689
msgid "Could not find an ebook inside the archive"
msgstr "Could not find an ebook inside the archive"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:736
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:747
msgid "Values of series index and rating must be numbers. Ignoring"
msgstr "Values of series index and rating must be numbers. Ignoring"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:743
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:754
msgid "Failed to parse date/time"
msgstr "Failed to parse date/time"
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:898
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:909
msgid "Converting input to HTML..."
msgstr "Converting input to HTML..."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:925
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:936
msgid "Running transforms on ebook..."
msgstr "Running transforms on ebook..."
-#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1015
+#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:1032
msgid "Creating"
msgstr "Creating"
@@ -2427,7 +2471,7 @@ msgstr "Start"
msgid "Do not insert a Table of Contents at the beginning of the book."
msgstr "Do not insert a Table of Contents at the beginning of the book."
-#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:22
+#: /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 "
@@ -2445,6 +2489,10 @@ msgstr ""
"\"Table of Contents\" settings (turn on \"Force use of auto-generated Table "
"of Contents)."
+#: /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 "
@@ -2845,105 +2893,105 @@ msgstr ""
msgid "TEMPLATE ERROR"
msgstr "TEMPLATE ERROR"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "No"
msgstr "No"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:576
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:591
#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:553
+#: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:561
msgid "Yes"
msgstr "Yes"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:658
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:675
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:993
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:426
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1018
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:331
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:576
+#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:574
msgid "Title"
msgstr "Title"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:659
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:676
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:432
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:994
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:431
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019
msgid "Author(s)"
msgstr "Author(s)"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:660
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:677
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
msgid "Publisher"
msgstr "Publisher"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:661
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:678
#: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49
msgid "Producer"
msgstr "Producer"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:662
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:679
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:41
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:247
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:129
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:79
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:389
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1200
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1206
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:211
msgid "Comments"
msgstr "Comments"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:664
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:681
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:31
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:377
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1196
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:72
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1202
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:753
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:761
msgid "Tags"
msgstr "Tags"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:666
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:683
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:30
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:74
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1211
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:65
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:114
msgid "Series"
msgstr "Series"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:667
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:684
msgid "Language"
msgstr "Language"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:669
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1188
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:686
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194
msgid "Timestamp"
msgstr "Timestamp"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:671
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:688
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:69
#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:271
msgid "Published"
msgstr "Published"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:673
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:690
msgid "Rights"
msgstr "Rights"
@@ -3115,7 +3163,7 @@ msgid "Convert comments downloaded from %s to plain text"
msgstr "Convert comments downloaded from %s to plain text"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fetch.py:181
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:145
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:157
msgid "Downloads metadata from Google Books"
msgstr "Downloads metadata from Google Books"
@@ -3268,7 +3316,7 @@ msgstr "The title of the book to search for."
msgid "The publisher of the book to search for."
msgstr "The publisher of the book to search for."
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:75
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:64
msgid ""
"\n"
"%prog [options] ISBN\n"
@@ -3353,19 +3401,43 @@ msgstr "A cover was found for this book"
msgid "Cover saved to file "
msgstr "Cover saved to file "
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1346
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1484
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1356
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
msgid "Cover"
msgstr "Cover"
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:16
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:280
msgid "Downloads metadata from Amazon"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:22
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:287
+msgid "US"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:288
+msgid "France"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:289
+msgid "Germany"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:290
+msgid "UK"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:375
+msgid "Amazon timed out. Try again later."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/base.py:94
msgid "Metadata source"
msgstr "Metadata source"
+#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/openlibrary.py:15
+msgid "Downloads metadata from The Open Library"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22
msgid "Modify images to meet Palm device size limitations."
msgstr "Modify images to meet Palm device size limitations."
@@ -3413,70 +3485,70 @@ msgstr "All articles"
msgid "This is an Amazon Topaz book. It cannot be processed."
msgstr "This is an Amazon Topaz book. It cannot be processed."
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1485
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
msgid "Title Page"
msgstr "Title Page"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1486
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
#: /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 "Table of Contents"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1487
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
msgid "Index"
msgstr "Index"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1488
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
msgid "Glossary"
msgstr "Glossary"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1489
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
msgid "Acknowledgements"
msgstr "Acknowledgements"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1490
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
msgid "Bibliography"
msgstr "Bibliography"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1491
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
msgid "Colophon"
msgstr "Colophon"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1492
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
msgid "Copyright"
msgstr "Copyright"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1493
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
msgid "Dedication"
msgstr "Dedication"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1494
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1501
msgid "Epigraph"
msgstr "Epigraph"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1495
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1502
msgid "Foreword"
msgstr "Foreword"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1496
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1503
msgid "List of Illustrations"
msgstr "List of Illustrations"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1497
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1504
msgid "List of Tables"
msgstr "List of Tables"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1505
msgid "Notes"
msgstr "Notes"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1499
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1506
msgid "Preface"
msgstr "Preface"
-#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1500
+#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1507
msgid "Main Text"
msgstr "Main Text"
@@ -3496,9 +3568,9 @@ msgid "HTML TOC generation options."
msgstr "HTML TOC generation options."
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:169
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:66
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:751
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:759
msgid "Rating"
msgstr "Rating"
@@ -3692,6 +3764,7 @@ msgid "Author"
msgstr "Author"
#: /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 "Subject"
@@ -3848,7 +3921,7 @@ msgstr ""
msgid "Table of Contents:"
msgstr "Table of Contents:"
-#: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:271
+#: /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"
@@ -4022,71 +4095,75 @@ msgstr ""
"paired with a txt-output-formatting option that is not none because links "
"are always removed with plain text output."
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:71
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:72
msgid "Send file to storage card instead of main memory by default"
msgstr "Send file to storage card instead of main memory by default"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:73
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:74
msgid "Confirm before deleting"
msgstr "Confirm before deleting"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:75
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:76
msgid "Main window geometry"
msgstr "Main window geometry"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:77
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:78
msgid "Notify when a new version is available"
msgstr "Notify when a new version is available"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:79
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:80
msgid "Use Roman numerals for series number"
msgstr "Use Roman numerals for series number"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:82
msgid "Sort tags list by name, popularity, or rating"
msgstr "Sort tags list by name, popularity, or rating"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:83
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:84
+msgid "Match tags by any or all."
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:86
msgid "Number of covers to show in the cover browsing mode"
msgstr "Number of covers to show in the cover browsing mode"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:85
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:88
msgid "Defaults for conversion to LRF"
msgstr "Defaults for conversion to LRF"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:87
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
msgid "Options for the LRF ebook viewer"
msgstr "Options for the LRF ebook viewer"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
msgid "Formats that are viewed using the internal viewer"
msgstr "Formats that are viewed using the internal viewer"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
msgid "Columns to be displayed in the book list"
msgstr "Columns to be displayed in the book list"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:96
msgid "Automatically launch content server on application startup"
msgstr "Automatically launch content server on application startup"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
msgid "Oldest news kept in database"
msgstr "Oldest news kept in database"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:98
msgid "Show system tray icon"
msgstr "Show system tray icon"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:97
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:100
msgid "Upload downloaded news to device"
msgstr "Upload downloaded news to device"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:102
msgid "Delete books from library after uploading to device"
msgstr "Delete books from library after uploading to device"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:104
msgid ""
"Show the cover flow in a separate window instead of in the main calibre "
"window"
@@ -4094,24 +4171,24 @@ msgstr ""
"Show the cover flow in a separate window instead of in the main calibre "
"window"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:106
msgid "Disable notifications from the system tray icon"
msgstr "Disable notifications from the system tray icon"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:108
msgid "Default action to perform when send to device button is clicked"
msgstr "Default action to perform when send to device button is clicked"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:110
-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 ""
-"Start searching as you type. If this is disabled then search will only take "
-"place when the Enter or Return key is pressed."
-
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113
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 ""
+"Start searching as you type. If this is disabled then search will only take "
+"place when the Enter or Return key is pressed."
+
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:116
+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."
@@ -4120,44 +4197,44 @@ msgstr ""
"showing only the matches. You can use the N or F3 keys to go to the next "
"match."
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:134
msgid "Maximum number of waiting worker processes"
msgstr "Maximum number of waiting worker processes"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136
msgid "Download social metadata (tags/rating/etc.)"
msgstr "Download social metadata (tags/rating/etc.)"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138
msgid "Overwrite author and title with new metadata"
msgstr "Overwrite author and title with new metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:140
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata_ui.py:101
msgid "Automatically download the cover, if available"
msgstr "Automatically download the cover, if available"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:142
msgid "Limit max simultaneous jobs to number of CPUs"
msgstr "Limit max simultaneous jobs to number of CPUs"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144
msgid "The layout of the user interface"
msgstr "The layout of the user interface"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:143
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:146
msgid "Show the average rating per item indication in the tag browser"
msgstr "Show the average rating per item indication in the tag browser"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:145
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:148
msgid "Disable UI animations"
msgstr "Disable UI animations"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:150
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153
msgid "tag browser categories not to display"
msgstr "tag browser categories not to display"
-#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:419
+#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:423
msgid "Choose Files"
msgstr "Choose Files"
@@ -4329,8 +4406,8 @@ msgstr "Add to library"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:371
#: /home/kovid/work/calibre/src/calibre/gui2/actions/delete.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/actions/tweak_epub.py:28
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:131
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:138
msgid "No book selected"
msgstr "No book selected"
@@ -4373,8 +4450,8 @@ msgstr "User annotations generated from main library only"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:127
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:80
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:127
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:188
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:225
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:190
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
#: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:92
msgid "No books selected"
msgstr "No books selected"
@@ -4434,8 +4511,8 @@ msgstr "Select destination for %s.%s"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/toolbar.py:54
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:167
-#: /home/kovid/work/calibre/src/calibre/library/server/opds.py:126
+#: /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 "%d books"
@@ -4527,6 +4604,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:430
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:274
+#: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:223
msgid "Are you sure?"
msgstr "Are you sure?"
@@ -4576,8 +4654,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:689
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:963
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:972
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101
#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:186
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:276
@@ -4613,7 +4691,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:400
#: /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:782
+#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:789
msgid "Not allowed"
msgstr "Not allowed"
@@ -4646,7 +4724,7 @@ msgid "Bulk convert"
msgstr "Bulk convert"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:86
-#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:507
+#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:517
msgid "Cannot convert"
msgstr "Cannot convert"
@@ -4654,7 +4732,7 @@ msgstr "Cannot convert"
msgid "Starting conversion of %d book(s)"
msgstr "Starting conversion of %d book(s)"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:171
msgid "Empty output file, probably the conversion process crashed"
msgstr "Empty output file, probably the conversion process crashed"
@@ -4844,7 +4922,7 @@ msgid "Stop Content Server"
msgstr "Stop Content Server"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:77
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:96
msgid "Email to"
msgstr "Email to"
@@ -4852,32 +4930,32 @@ msgstr "Email to"
msgid "Email to and delete from library"
msgstr "Email to and delete from library"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:90
msgid "(delete from library)"
msgstr "(delete from library)"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:105
msgid "Setup email based sharing of books"
msgstr "Setup email based sharing of books"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "D"
msgstr "D"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:123
msgid "Send to device"
msgstr "Send to device"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:141
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:142
msgid "Connect/share"
msgstr "Connect/share"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:174
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:84
msgid "Stopping"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:175
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/device.py:176
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/server.py:85
msgid "Stopping server, this could take upto a minute, please wait..."
msgstr ""
@@ -4964,20 +5042,20 @@ msgid "Downloading {0} for {1} book(s)"
msgstr "Downloading {0} for {1} book(s)"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:126
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:187
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:189
msgid "Cannot edit metadata"
msgstr "Cannot edit metadata"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:224
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:227
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:226
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:229
msgid "Cannot merge books"
msgstr "Cannot merge books"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:228
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:230
msgid "At least two books must be selected for merging"
msgstr "At least two books must be selected for merging"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:231
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:233
msgid ""
"You are about to merge more than 5 books. Are you sure you want to "
"proceed?"
@@ -4985,7 +5063,7 @@ msgstr ""
"You are about to merge more than 5 books. Are you sure you want to "
"proceed?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:239
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:241
msgid ""
"Book formats and metadata from the selected books will be added to the "
"first selected book (%s). ISBN will not be merged.
The "
@@ -4997,7 +5075,7 @@ msgstr ""
"second and subsequently selected books will not be deleted or "
"changed.
Please confirm you want to proceed."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:251
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:253
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 "
@@ -5017,7 +5095,7 @@ msgstr ""
"and subsequently selected books will be permanently deleted from your "
"calibre library.
Are you sure you want to proceed?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:267
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:269
msgid ""
"Book formats and metadata from the selected books will be merged into the "
"first selected book (%s). ISBN will not be "
@@ -5035,19 +5113,19 @@ msgstr ""
"books will be permanently deleted from your calibre library.
"
"Are you sure you want to proceed?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:19
msgid "F"
msgstr "F"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:17
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:19
msgid "Fetch news"
msgstr "Fetch news"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:52
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:54
msgid "Fetching news from "
msgstr "Fetching news from "
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:81
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/fetch_news.py:83
msgid " fetched."
msgstr " fetched."
@@ -5112,7 +5190,7 @@ msgid "Ctrl+P"
msgstr "Ctrl+P"
#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:24
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:201
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/main.py:206
msgid "Run welcome wizard"
msgstr "Run welcome wizard"
@@ -5120,11 +5198,11 @@ msgstr "Run welcome wizard"
msgid "Restart in debug mode"
msgstr "Restart in debug mode"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:40
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:43
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:45
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/preferences.py:48
msgid "Cannot configure before calibre is restarted."
msgstr "Cannot configure before calibre is restarted."
@@ -5200,7 +5278,7 @@ msgid "Click the show details button to see which ones."
msgstr "Click the show details button to see which ones."
#: /home/kovid/work/calibre/src/calibre/gui2/actions/show_book_details.py:16
-#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:758
+#: /home/kovid/work/calibre/src/calibre/library/server/browse.py:766
msgid "Show book details"
msgstr "Show book details"
@@ -5287,26 +5365,30 @@ msgstr "View"
msgid "View specific format"
msgstr "View specific format"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:85
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:38
+msgid "Read a random book"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:181
msgid "Cannot view"
msgstr "Cannot view"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:98
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:112
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:119
msgid "Format unavailable"
msgstr "Format unavailable"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:106
msgid "Selected books have no formats"
msgstr "Selected books have no formats"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:108
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:127
msgid "Choose the format to view"
msgstr "Choose the format to view"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
msgid ""
"Not all the selected books were available in the %s format. You should "
"convert them first."
@@ -5314,11 +5396,11 @@ msgstr ""
"Not all the selected books were available in the %s format. You should "
"convert them first."
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:120
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:127
msgid "Multiple Books Selected"
msgstr "Multiple Books Selected"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:121
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:128
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 "
@@ -5330,11 +5412,11 @@ msgstr ""
"started the process cannot be stopped until complete. Do you wish to "
"continue?"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:130
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:137
msgid "Cannot open folder"
msgstr "Cannot open folder"
-#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/actions/view.py:182
msgid "%s has no available formats."
msgstr "%s has no available formats."
@@ -5359,7 +5441,7 @@ msgid "The specified directory could not be processed."
msgstr "The specified directory could not be processed."
#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274
-#: /home/kovid/work/calibre/src/calibre/gui2/device.py:838
+#: /home/kovid/work/calibre/src/calibre/gui2/device.py:841
msgid "No books"
msgstr "No books"
@@ -5511,8 +5593,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:458
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:460
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:462
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:170
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:173
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories_ui.py:175
@@ -5577,8 +5660,8 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:160
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:384
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1186
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1192
msgid "Path"
msgstr "Path"
@@ -5588,17 +5671,17 @@ msgstr "Path"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:149
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:150
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:153
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:383
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:63
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:139
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:24
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:144
+#: /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 "Formats"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:29
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:997
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1189
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1022
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
msgid "Collections"
msgstr "Collections"
@@ -5608,25 +5691,25 @@ msgid "Click to open"
msgstr "Click to open"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:57
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:376
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:388
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1195
-#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1199
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:375
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:381
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1201
+#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1205
#: /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/widgets.py:344
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:350
msgid "None"
msgstr "None"
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:158
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:237
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:243
msgid "Paste Cover"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:159
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:238
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:244
msgid "Copy Cover"
msgstr ""
@@ -5676,7 +5759,7 @@ msgstr "Options specific to"
msgid "output"
msgstr "output"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:77
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:42
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi_ui.py:295
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_tab_template_ui.py:32
@@ -5684,7 +5767,7 @@ msgstr "output"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:33
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:38
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:44
#: /home/kovid/work/calibre/src/calibre/gui2/convert/heuristics_ui.py:112
#: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:137
#: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:120
@@ -5699,7 +5782,7 @@ msgstr "output"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:33
#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace_ui.py:147
#: /home/kovid/work/calibre/src/calibre/gui2/convert/snb_output_ui.py:42
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:56
+#: /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
@@ -5707,14 +5790,14 @@ msgstr "output"
#: /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
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:114
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:130
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/custom_columns_ui.py:81
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/email_ui.py:65
-#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:142
+#: /home/kovid/work/calibre/src/calibre/gui2/preferences/look_feel_ui.py:139
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc_ui.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard_ui.py:113
#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:86
@@ -5730,68 +5813,36 @@ msgstr "output"
msgid "Form"
msgstr "Form"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:78
msgid "Bib file encoding:"
msgstr "Bib file encoding:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:79
#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_csv_xml_ui.py:43
msgid "Fields to include in output:"
msgstr "Fields to include in output:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:92
-msgid "ascii/LaTeX"
-msgstr "ascii/LaTeX"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:80
msgid "Encoding configuration (change if you have errors) :"
msgstr "Encoding configuration (change if you have errors) :"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:94
-msgid "strict"
-msgstr "strict"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:95
-msgid "replace"
-msgstr "replace"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:96
-msgid "ignore"
-msgstr "ignore"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:97
-msgid "backslashreplace"
-msgstr "backslashreplace"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:81
msgid "BibTeX entry type:"
msgstr "BibTeX entry type:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:99
-msgid "mixed"
-msgstr "mixed"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:100
-msgid "misc"
-msgstr "misc"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:101
-msgid "book"
-msgstr "book"
-
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:102
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:82
msgid "Create a citation tag?"
msgstr "Create a citation tag?"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:103
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:83
msgid "Add files path with formats?"
msgstr "Add files path with formats?"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:84
msgid "Expression to form the BibTeX citation tag:"
msgstr "Expression to form the BibTeX citation tag:"
-#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:105
+#: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_bibtex_ui.py:85
msgid ""
"Some explanation about this template:\n"
" -The fields availables are 'author_sort', 'authors', 'id',\n"
@@ -6086,6 +6137,7 @@ msgid "Style the selected text block"
msgstr "Style the selected text block"
#: /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:139
msgid "Normal"
@@ -6334,10 +6386,14 @@ msgstr "Do not insert a &Table of Contents at the beginning of the book."
msgid "FB2 Output"
msgstr "FB2 Output"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:39
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:45
msgid "Sectionize:"
msgstr "Sectionise:"
+#: /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 "Font rescaling wizard"
@@ -6960,7 +7016,7 @@ msgid "Regex:"
msgstr "Regex:"
#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:92
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:136
msgid "Test"
msgstr "Test"
@@ -6992,7 +7048,7 @@ msgstr "&Next"
msgid "Preview"
msgstr "Preview"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:15
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:17
msgid ""
"Search\n"
"&\n"
@@ -7002,18 +7058,18 @@ msgstr ""
"&\n"
"Replace"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:28
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:31
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:34
+#: /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 "&Search Regular Expression"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:71
+#: /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 "Invalid regular expression"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/search_and_replace.py:72
+#: /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 "Invalid regular expression: %s"
@@ -7126,19 +7182,19 @@ msgstr "Invalid XPath"
msgid "The XPath expression %s is invalid."
msgstr "The XPath expression %s is invalid."
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:57
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:60
msgid "Chapter &mark:"
msgstr "Chapter &mark:"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:58
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:61
msgid "Remove first &image"
msgstr "Remove first &image"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:62
msgid "Insert &metadata as page at start of book"
msgstr "Insert &metadata as page at start of book"
-#: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:60
+#: /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 "
@@ -7150,6 +7206,10 @@ msgstr ""
"to use these options. Leave the replace field blank and enter your "
"header/footer removal regexps into the search field."
+#: /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"
@@ -7383,11 +7443,11 @@ msgstr ""
"tag.Help
\n"
-"\n"
-" \n"
-"
\n"
-"\n"
-"