diff --git a/osx_installer.py b/osx_installer.py
index ce9ee98f5c..79e363618f 100644
--- a/osx_installer.py
+++ b/osx_installer.py
@@ -316,10 +316,6 @@ def main():
},
setup_requires = ['py2app'],
)
- subprocess.check_call('scp dist/*.dmg giskard:work/calibre/dist', shell=True)
-# if '--shutdown' in sys.argv:
-# print 'Shutting down'
-# subprocess.call(('/usr/bin/sudo', '/sbin/shutdown', '-h', '+0'))
return 0
if __name__ == '__main__':
diff --git a/src/calibre/__init__.py b/src/calibre/__init__.py
index 32a883b93f..7c1656a614 100644
--- a/src/calibre/__init__.py
+++ b/src/calibre/__init__.py
@@ -15,7 +15,7 @@ from optparse import OptionParser as _OptionParser
from optparse import IndentedHelpFormatter
from logging import Formatter
-from PyQt4.QtCore import QSettings, QVariant, QUrl, QByteArray
+from PyQt4.QtCore import QSettings, QVariant, QUrl, QByteArray, QString
from PyQt4.QtGui import QDesktopServices
from calibre.translations.msgfmt import make
@@ -46,7 +46,7 @@ def osx_version():
m = re.match(r'(\d+)\.(\d+)\.(\d+)', src)
if m:
return int(m.group(1)), int(m.group(2)), int(m.group(3))
-
+
# Default translation is NOOP
import __builtin__
@@ -56,7 +56,7 @@ class CommandLineError(Exception):
pass
class ColoredFormatter(Formatter):
-
+
def format(self, record):
ln = record.__dict__['levelname']
col = ''
@@ -72,7 +72,7 @@ class ColoredFormatter(Formatter):
col = terminal_controller.CYAN
record.__dict__['levelname'] = col + record.__dict__['levelname'] + terminal_controller.NORMAL
return Formatter.format(self, record)
-
+
def setup_cli_handlers(logger, level):
logger.setLevel(level)
@@ -91,31 +91,31 @@ def setup_cli_handlers(logger, level):
logger.addHandler(handler)
class CustomHelpFormatter(IndentedHelpFormatter):
-
+
def format_usage(self, usage):
return _("%sUsage%s: %s\n") % (terminal_controller.BLUE, terminal_controller.NORMAL, usage)
-
+
def format_heading(self, heading):
- return "%*s%s%s%s:\n" % (self.current_indent, terminal_controller.BLUE,
+ return "%*s%s%s%s:\n" % (self.current_indent, terminal_controller.BLUE,
"", heading, terminal_controller.NORMAL)
-
+
def format_option(self, option):
result = []
opts = self.option_strings[option]
opt_width = self.help_position - self.current_indent - 2
if len(opts) > opt_width:
- opts = "%*s%s\n" % (self.current_indent, "",
+ opts = "%*s%s\n" % (self.current_indent, "",
terminal_controller.GREEN+opts+terminal_controller.NORMAL)
indent_first = self.help_position
else: # start help on same line as opts
- opts = "%*s%-*s " % (self.current_indent, "", opt_width + len(terminal_controller.GREEN + terminal_controller.NORMAL),
+ opts = "%*s%-*s " % (self.current_indent, "", opt_width + len(terminal_controller.GREEN + terminal_controller.NORMAL),
terminal_controller.GREEN + opts + terminal_controller.NORMAL)
indent_first = 0
result.append(opts)
if option.help:
help_text = self.expand_default(option).split('\n')
help_lines = []
-
+
for line in help_text:
help_lines.extend(textwrap.wrap(line, self.help_width))
result.append("%*s%s\n" % (indent_first, "", help_lines[0]))
@@ -126,7 +126,7 @@ class CustomHelpFormatter(IndentedHelpFormatter):
return "".join(result)+'\n'
class OptionParser(_OptionParser):
-
+
def __init__(self,
usage='%prog [options] filename',
version='%%prog (%s %s)'%(__appname__, __version__),
@@ -136,16 +136,16 @@ class OptionParser(_OptionParser):
**kwds):
usage += '''\n\nWhenever you pass arguments to %prog that have spaces in them, '''\
'''enclose the arguments in quotation marks.'''
- _OptionParser.__init__(self, usage=usage, version=version, epilog=epilog,
- formatter=CustomHelpFormatter(),
+ _OptionParser.__init__(self, usage=usage, version=version, epilog=epilog,
+ formatter=CustomHelpFormatter(),
conflict_handler=conflict_handler, **kwds)
self.gui_mode = gui_mode
-
+
def error(self, msg):
if self.gui_mode:
raise Exception(msg)
_OptionParser.error(self, msg)
-
+
def merge(self, parser):
'''
Add options from parser to self. In case of conflicts, confilicting options from
@@ -153,18 +153,18 @@ class OptionParser(_OptionParser):
'''
opts = list(parser.option_list)
groups = list(parser.option_groups)
-
+
def merge_options(options, container):
for opt in copy.deepcopy(options):
if not self.has_option(opt.get_opt_string()):
container.add_option(opt)
-
+
merge_options(opts, self)
-
+
for group in groups:
g = self.add_option_group(group.title)
merge_options(group.option_list, g)
-
+
def subsume(self, group_name, msg=''):
'''
Move all existing options into a subgroup named
@@ -176,7 +176,7 @@ class OptionParser(_OptionParser):
for opt in opts:
self.remove_option(opt.get_opt_string())
subgroup.add_option(opt)
-
+
def options_iter(self):
for opt in self.option_list:
if str(opt).strip():
@@ -185,12 +185,12 @@ class OptionParser(_OptionParser):
for opt in gr.option_list:
if str(opt).strip():
yield opt
-
+
def option_by_dest(self, dest):
for opt in self.options_iter():
if opt.dest == dest:
return opt
-
+
def merge_options(self, lower, upper):
'''
Merge options in lower and upper option lists into upper.
@@ -204,7 +204,7 @@ class OptionParser(_OptionParser):
if lower.__dict__[dest] != opt.default and \
upper.__dict__[dest] == opt.default:
upper.__dict__[dest] = lower.__dict__[dest]
-
+
def load_library(name, cdll):
if iswindows:
@@ -250,12 +250,12 @@ def browser(honor_time=False):
def fit_image(width, height, pwidth, pheight):
'''
- Fit image in box of width pwidth and height pheight.
+ Fit image in box of width pwidth and height pheight.
@param width: Width of image
@param height: Height of image
- @param pwidth: Width of box
+ @param pwidth: Width of box
@param pheight: Height of box
- @return: scaled, new_width, new_height. scaled is True iff new_widdth and/or new_height is different from width or height.
+ @return: scaled, new_width, new_height. scaled is True iff new_widdth and/or new_height is different from width or height.
'''
scaled = height > pheight or width > pwidth
if height > pheight:
@@ -267,7 +267,7 @@ def fit_image(width, height, pwidth, pheight):
if height > pheight:
corrf = pheight/float(height)
width, height = floor(corrf*width), pheight
-
+
return scaled, int(width), int(height)
def get_lang():
@@ -290,7 +290,7 @@ def set_translator():
from calibre.translations.compiled import translations
except:
return
- lang = get_lang()
+ lang = get_lang()
if lang:
buf = None
if os.access(lang+'.po', os.R_OK):
@@ -302,12 +302,12 @@ def set_translator():
if buf is not None:
t = GNUTranslations(buf)
t.install(unicode=True)
-
+
set_translator()
def sanitize_file_name(name):
'''
- Remove characters that are illegal in filenames from name.
+ Remove characters that are illegal in filenames from name.
Also remove path separators. All illegal characters are replaced by
underscores.
'''
@@ -340,7 +340,7 @@ def detect_ncpus():
return 1
except ValueError: # On some systems the sysctl call fails
return 1
-
+
#for Windows
if os.environ.has_key("NUMBER_OF_PROCESSORS"):
ncpus = int(os.environ["NUMBER_OF_PROCESSORS"]);
@@ -354,7 +354,7 @@ def launch(path_or_url):
if os.path.exists(path_or_url):
path_or_url = 'file:'+path_or_url
QDesktopServices.openUrl(QUrl(path_or_url))
-
+
def relpath(target, base=os.curdir):
"""
Return a relative path to the target from either the current dir or an optional base dir.
@@ -396,13 +396,13 @@ def _clean_lock_file(file):
os.remove(file.name)
except:
pass
-
+
def singleinstance(name):
'''
- Return True if no other instance of the application identified by name is running,
+ Return True if no other instance of the application identified by name is running,
False otherwise.
@param name: The name to lock.
- @type name: string
+ @type name: string
'''
if iswindows:
from win32event import CreateMutex
@@ -424,19 +424,15 @@ def singleinstance(name):
return True
except IOError:
return False
-
+
return False
class Settings(QSettings):
-
- def __init__(self):
+
+ def __init__(self, name='calibre2'):
QSettings.__init__(self, QSettings.IniFormat, QSettings.UserScope,
- 'kovidgoyal.net', 'calibre')
-
- def migrate(self, settings):
- for key in settings.allKeys():
- self.setValue(key, settings.value(key, QVariant()))
-
+ 'kovidgoyal.net', name)
+
def get(self, key, default=None):
key = str(key)
if not self.contains(key):
@@ -445,17 +441,30 @@ class Settings(QSettings):
if not val:
return None
return cPickle.loads(val)
-
+
def set(self, key, val):
val = cPickle.dumps(val, -1)
self.setValue(str(key), QVariant(QByteArray(val)))
-
+
_settings = Settings()
-if not _settings.get('migrated from QSettings'):
- _settings.migrate(QSettings('KovidsBrain', 'libprs500'))
- _settings.set('migrated from QSettings', True)
- _settings.sync()
-
+if not _settings.get('rationalized'):
+ __settings = Settings(name='calibre')
+ dbpath = os.path.join(os.path.expanduser('~'), 'library1.db').decode(sys.getfilesystemencoding())
+ dbpath = unicode(__settings.value('database path',
+ QVariant(QString.fromUtf8(dbpath.encode('utf-8')))).toString())
+ cmdline = __settings.value('LRF conversion defaults', QVariant(QByteArray(''))).toByteArray().data()
+
+
+ _settings.set('database path', dbpath)
+ if cmdline:
+ cmdline = cPickle.loads(cmdline)
+ _settings.set('LRF conversion defaults', cmdline)
+ _settings.set('rationalized', True)
+ try:
+ os.unlink(unicode(__settings.fileName()))
+ except:
+ pass
+
_spat = re.compile(r'^the\s+|^a\s+|^an\s+', re.IGNORECASE)
def english_sort(x, y):
'''
@@ -464,40 +473,40 @@ def english_sort(x, y):
return cmp(_spat.sub('', x), _spat.sub('', y))
class LoggingInterface:
-
+
def __init__(self, logger):
self.__logger = logger
-
+
def ___log(self, func, msg, args, kwargs):
args = [msg] + list(args)
for i in range(len(args)):
if isinstance(args[i], unicode):
args[i] = args[i].encode(preferred_encoding, 'replace')
-
+
func(*args, **kwargs)
-
+
def log_debug(self, msg, *args, **kwargs):
self.___log(self.__logger.debug, msg, args, kwargs)
-
+
def log_info(self, msg, *args, **kwargs):
self.___log(self.__logger.info, msg, args, kwargs)
-
+
def log_warning(self, msg, *args, **kwargs):
self.___log(self.__logger.warning, msg, args, kwargs)
-
+
def log_warn(self, msg, *args, **kwargs):
self.___log(self.__logger.warning, msg, args, kwargs)
-
+
def log_error(self, msg, *args, **kwargs):
self.___log(self.__logger.error, msg, args, kwargs)
-
+
def log_critical(self, msg, *args, **kwargs):
self.___log(self.__logger.critical, msg, args, kwargs)
-
+
def log_exception(self, msg, *args):
self.___log(self.__logger.exception, msg, args, {})
-
-
+
+
def strftime(fmt, t=time.localtime()):
'''
A version of strtime that returns unicode strings.
@@ -512,10 +521,10 @@ if islinux and not getattr(sys, 'frozen', False):
import pkg_resources
plugins = pkg_resources.resource_filename(__appname__, 'plugins')
sys.path.insert(1, plugins)
-
+
if iswindows and hasattr(sys, 'frozen'):
sys.path.insert(1, os.path.dirname(sys.executable))
-
+
try:
import pictureflow
pictureflowerror = ''
@@ -523,12 +532,12 @@ except Exception, err:
pictureflow = None
pictureflowerror = str(err)
-
+
def entity_to_unicode(match, exceptions=[], encoding='cp1252'):
'''
@param match: A match object such that '&'+match.group(1)';' is the entity.
- @param exceptions: A list of entities to not convert (Each entry is the name of the entity, for e.g. 'apos' or '#1234'
- @param encoding: The encoding to use to decode numeric entities between 128 and 256.
+ @param exceptions: A list of entities to not convert (Each entry is the name of the entity, for e.g. 'apos' or '#1234'
+ @param encoding: The encoding to use to decode numeric entities between 128 and 256.
If None, the Unicode UCS encoding is used. A common encoding is cp1252.
'''
ent = match.group(1)
@@ -556,7 +565,7 @@ def entity_to_unicode(match, exceptions=[], encoding='cp1252'):
return unichr(name2codepoint[ent])
except KeyError:
return '&'+ent+';'
-
+
if isosx:
fdir = os.path.expanduser('~/.fonts')
if not os.path.exists(fdir):
diff --git a/src/calibre/ebooks/chardet/__init__.py b/src/calibre/ebooks/chardet/__init__.py
index c0a9b45d0f..36d3b909de 100644
--- a/src/calibre/ebooks/chardet/__init__.py
+++ b/src/calibre/ebooks/chardet/__init__.py
@@ -46,7 +46,10 @@ def xml_to_unicode(raw, verbose=False):
if match is not None:
encoding = match.group(1)
if encoding is None:
- chardet = detect(raw)
+ try:
+ chardet = detect(raw)
+ except:
+ chardet = {'encoding':'utf-8', 'confidence':0}
encoding = chardet['encoding']
if chardet['confidence'] < 1 and verbose:
print 'WARNING: Encoding detection confidence %d%%'%(chardet['confidence']*100)
diff --git a/src/calibre/ebooks/lrf/pylrs/pylrs.py b/src/calibre/ebooks/lrf/pylrs/pylrs.py
index 55069b9934..a8cbb6fb1c 100644
--- a/src/calibre/ebooks/lrf/pylrs/pylrs.py
+++ b/src/calibre/ebooks/lrf/pylrs/pylrs.py
@@ -553,54 +553,40 @@ class Book(Delegator):
if isinstance(obj, Main):
main = obj
break
- pages = [obj for obj in main.contents if isinstance(obj, Page)]
-
- text_blocks = []
- for p in pages:
- for obj in p.contents:
- if isinstance(obj, TextBlock):
- text_blocks.append(obj)
- elif isinstance(obj, Canvas):
- for o in obj.contents:
- if isinstance(o.content, TextBlock):
- text_blocks.append(o.content)
-
- text_styles = set([t.textStyle for t in text_blocks])
- important_text_styles = []
- for ts in text_styles:
- temp = [len(tb.contents) for tb in text_blocks if tb.textStyle == ts]
- avg_content_length = 0
- if len(temp) > 0:
- avg_content_length = sum(temp)/len(temp)
- if avg_content_length > 4:
- important_text_styles.append(ts)
-
+
fonts = {}
- if not important_text_styles:
- important_text_styles = text_styles
-
- for ts in important_text_styles:
- fs = int(ts.attrs['fontsize'])
- if fonts.has_key(fs):
- fonts[fs] += 1
- else:
- fonts[fs] = 1
-
+ for text in main.get_all(lambda x: isinstance(x, Text)):
+ fs = base_font_size
+ ancestor = text.parent
+ while ancestor:
+ try:
+ fs = int(ancestor.attrs['fontsize'])
+ break
+ except (AttributeError, KeyError):
+ pass
+ try:
+ fs = int(ancestor.textSettings['fontsize'])
+ break
+ except (AttributeError, KeyError):
+ pass
+ try:
+ fs = int(ancestor.textStyle.attrs['fontsize'])
+ break
+ except (AttributeError, KeyError):
+ pass
+ ancestor = ancestor.parent
+ length = len(text.text)
+ fonts[fs] = fonts.get(fs, 0) + length
if not fonts:
print 'WARNING: LRF seems to have no textual content. Cannot rationalize font sizes.'
return
- old_base_font_size = float(max(zip(fonts.keys(), fonts.values()), key=operator.itemgetter(1))[0])
-
- factor = base_font_size/old_base_font_size
-
+ old_base_font_size = float(max(fonts.items(), key=operator.itemgetter(1))[0])
+ factor = base_font_size / old_base_font_size
def rescale(old):
return str(int(int(old) * factor))
-
- for ts in text_styles:
- ts.attrs['fontsize'] = rescale(ts.attrs['fontsize'])
- ts.attrs['baselineskip'] = rescale(ts.attrs['baselineskip'])
-
+
+ text_blocks = list(main.get_all(lambda x: isinstance(x, TextBlock)))
for tb in text_blocks:
if tb.textSettings.has_key('fontsize'):
tb.textSettings['fontsize'] = rescale(tb.textSettings['fontsize'])
@@ -609,7 +595,12 @@ class Book(Delegator):
span.attrs['fontsize'] = rescale(span.attrs['fontsize'])
if span.attrs.has_key('baselineskip'):
span.attrs['baselineskip'] = rescale(span.attrs['baselineskip'])
-
+
+ text_styles = set(tb.textStyle for tb in text_blocks)
+ for ts in text_styles:
+ ts.attrs['fontsize'] = rescale(ts.attrs['fontsize'])
+ ts.attrs['baselineskip'] = rescale(ts.attrs['baselineskip'])
+
def renderLrs(self, lrsFile, encoding="UTF-8"):
if isinstance(lrsFile, basestring):
@@ -1603,6 +1594,8 @@ class Paragraph(LrsContainer):
LrsContainer.__init__(self, [Text, CR, DropCaps, CharButton,
LrsSimpleChar1, basestring])
if text is not None:
+ if isinstance(text, basestring):
+ text = Text(text)
self.append(text)
def CR(self):
@@ -1923,6 +1916,8 @@ class Span(LrsSimpleChar1, LrsContainer):
def __init__(self, text=None, **attrs):
LrsContainer.__init__(self, [LrsSimpleChar1, Text, basestring])
if text is not None:
+ if isinstance(text, basestring):
+ text = Text(text)
self.append(text)
for attrname in attrs.keys():
diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py
index 78015dcd91..91ae9f0d57 100644
--- a/src/calibre/gui2/__init__.py
+++ b/src/calibre/gui2/__init__.py
@@ -83,17 +83,12 @@ class TableView(QTableView):
def read_settings(self):
- self.cw = str(Settings().value(self.__class__.__name__ + ' column widths', QVariant('')).toString())
- try:
- self.cw = tuple(int(i) for i in self.cw.split(','))
- except ValueError:
- self.cw = None
+ self.cw = Settings().get(self.__class__.__name__ + ' column widths')
def write_settings(self):
settings = Settings()
- settings.setValue(self.__class__.__name__ + ' column widths',
- QVariant(','.join(str(self.columnWidth(i))
- for i in range(self.model().columnCount(None)))))
+ settings.set(self.__class__.__name__ + ' column widths',
+ tuple([int(self.columnWidth(i)) for i in range(self.model().columnCount(None))]))
def restore_column_widths(self):
if self.cw and len(self.cw):
@@ -107,14 +102,10 @@ class TableView(QTableView):
is hidden, if True it is shown.
'''
if cols:
- Settings().setValue(self.__class__.__name__ + ' visible columns',
- QVariant(repr(cols)))
+ Settings().set(self.__class__.__name__ + ' visible columns', cols)
else:
- cols = qstring_to_unicode(Settings().value(self.__class__.__name__ + ' visible columns',
- QVariant('')).toString())
- if cols:
- cols = eval(cols)
- else:
+ cols = Settings().get(self.__class__.__name__ + ' visible columns')
+ if not cols:
cols = [True for i in range(self.model().columnCount(self))]
for i in range(len(cols)):
@@ -217,7 +208,7 @@ _sidebar_directories = []
def set_sidebar_directories(dirs):
global _sidebar_directories
if dirs is None:
- dirs = Settings().value('frequently used directories', QVariant([])).toStringList()
+ dirs = Settings().get('frequently used directories', [])
_sidebar_directories = [QUrl.fromLocalFile(i) for i in dirs]
class FileDialog(QObject):
@@ -251,7 +242,7 @@ class FileDialog(QObject):
self.fd.setModal(modal)
self.fd.setFilter(ftext)
self.fd.setWindowTitle(title)
- state = settings.value(name, QVariant()).toByteArray()
+ state = settings.get(self.dialog_name, QByteArray())
if not self.fd.restoreState(state):
self.fd.setDirectory(os.path.expanduser('~'))
osu = [i for i in self.fd.sidebarUrls()]
@@ -259,7 +250,7 @@ class FileDialog(QObject):
QObject.connect(self.fd, SIGNAL('accepted()'), self.save_dir)
self.accepted = self.fd.exec_() == QFileDialog.Accepted
else:
- dir = settings.value(self.dialog_name, QVariant(os.path.expanduser('~'))).toString()
+ dir = settings.get(self.dialog_name, os.path.expanduser('~'))
self.selected_files = []
if mode == QFileDialog.AnyFile:
f = qstring_to_unicode(
@@ -284,7 +275,7 @@ class FileDialog(QObject):
self.selected_files.append(f)
if self.selected_files:
self.selected_files = [qstring_to_unicode(q) for q in self.selected_files]
- settings.setValue(self.dialog_name, QVariant(os.path.dirname(self.selected_files[0])))
+ settings.set(self.dialog_name, os.path.dirname(self.selected_files[0]))
self.accepted = bool(self.selected_files)
@@ -299,7 +290,7 @@ class FileDialog(QObject):
def save_dir(self):
if self.fd:
settings = Settings()
- settings.setValue(self.dialog_name, QVariant(self.fd.saveState()))
+ settings.set(self.dialog_name, self.fd.saveState())
def choose_dir(window, name, title):
diff --git a/src/calibre/gui2/dialogs/config.py b/src/calibre/gui2/dialogs/config.py
index 6248144683..0af4f14d35 100644
--- a/src/calibre/gui2/dialogs/config.py
+++ b/src/calibre/gui2/dialogs/config.py
@@ -3,7 +3,7 @@ __copyright__ = '2008, Kovid Goyal For help visit %s.kovidgoyal.net
Must be a directory.'))
d.exec_()
elif not os.access(path, os.W_OK):
- d = error_dialog(self, _('Invalid database location'),
+ d = error_dialog(self, _('Invalid database location'),
_('Invalid database location.
Cannot write to ')+path)
d.exec_()
else:
self.database_location = os.path.abspath(path)
self.directories = [qstring_to_unicode(self.directory_list.item(i).text()) for i in range(self.directory_list.count())]
- settings.setValue('frequently used directories', QVariant(self.directories))
+ settings.set('frequently used directories', self.directories)
QDialog.accept(self)
class Vacuum(QMessageBox):
-
+
def __init__(self, parent, db):
self.db = db
- QMessageBox.__init__(self, QMessageBox.Information, _('Compacting...'), _('Compacting database. This may take a while.'),
+ QMessageBox.__init__(self, QMessageBox.Information, _('Compacting...'), _('Compacting database. This may take a while.'),
QMessageBox.NoButton, parent)
QTimer.singleShot(200, self.vacuum)
-
+
def vacuum(self):
self.db.vacuum()
self.accept()
-
+
diff --git a/src/calibre/gui2/dialogs/fetch_metadata.py b/src/calibre/gui2/dialogs/fetch_metadata.py
index 0967a91bb8..9a64c8dc42 100644
--- a/src/calibre/gui2/dialogs/fetch_metadata.py
+++ b/src/calibre/gui2/dialogs/fetch_metadata.py
@@ -76,7 +76,7 @@ class FetchMetadata(QDialog, Ui_FetchMetadata):
self.timeout = timeout
QObject.connect(self.fetch, SIGNAL('clicked()'), self.fetch_metadata)
- self.key.setText(Settings().value('isbndb.com key', QVariant('')).toString())
+ self.key.setText(Settings().get('isbndb.com key', ''))
self.setWindowTitle(title if title else 'Unknown')
self.tlabel.setText(self.tlabel.text().arg(title if title else 'Unknown'))
@@ -106,7 +106,7 @@ class FetchMetadata(QDialog, Ui_FetchMetadata):
_('You must specify a valid access key for isbndb.com'))
return
else:
- Settings().setValue('isbndb.com key', QVariant(self.key.text()))
+ Settings().set('isbndb.com key', str(self.key.text()))
args = ['isbndb']
if self.isbn:
diff --git a/src/calibre/gui2/dialogs/lrf_single.py b/src/calibre/gui2/dialogs/lrf_single.py
index 1929282770..e5df43a673 100644
--- a/src/calibre/gui2/dialogs/lrf_single.py
+++ b/src/calibre/gui2/dialogs/lrf_single.py
@@ -106,9 +106,8 @@ class LRFSingleDialog(QDialog, Ui_LRFSingleDialog):
def load_saved_global_defaults(self):
- cmdline = Settings().value('LRF conversion defaults', QVariant(QByteArray(''))).toByteArray().data()
+ cmdline = Settings().get('LRF conversion defaults')
if cmdline:
- cmdline = cPickle.loads(cmdline)
self.set_options_from_cmdline(cmdline)
def set_options_from_cmdline(self, cmdline):
@@ -382,7 +381,7 @@ class LRFSingleDialog(QDialog, Ui_LRFSingleDialog):
cmdline.extend([u'--cover', self.cover_file.name])
self.cmdline = [unicode(i) for i in cmdline]
else:
- Settings().setValue('LRF conversion defaults', QVariant(QByteArray(cPickle.dumps(cmdline))))
+ Settings().set('LRF conversion defaults', cmdline)
QDialog.accept(self)
class LRFBulkDialog(LRFSingleDialog):
diff --git a/src/calibre/gui2/dialogs/lrf_single.ui b/src/calibre/gui2/dialogs/lrf_single.ui
index cf27b2fd7d..9fd3bee155 100644
--- a/src/calibre/gui2/dialogs/lrf_single.ui
+++ b/src/calibre/gui2/dialogs/lrf_single.ui
@@ -122,8 +122,8 @@
')%(__appname__, __appname__)
- self.vanity_template += _('%s: %s by Kovid Goyal %%(version)s
%%(device)s
%%(device)s
Books with the same title as the following already exist in the database. Add them anyway?
Cannot upload books to device there is no more free space available ')+where+ '
\nCould not convert %d of %d books, because no suitable source format was found.
An invalid database already exists at %s, delete it before trying to move the existing database.
Error: %s')%(newloc, str(err)))
d.exec_()
self.library_path = self.library_view.model().db.library_path
@@ -997,23 +997,23 @@ class Main(MainWindow, Ui_MainWindow):
if hasattr(d, 'directories'):
set_sidebar_directories(d.directories)
self.library_view.model().read_config()
-
+
############################################################################
-
+
################################ Book info #################################
-
+
def show_book_info(self, *args):
if self.current_view() is not self.library_view:
- error_dialog(self, _('No detailed info available'),
+ error_dialog(self, _('No detailed info available'),
_('No detailed information is available for books on the device.')).exec_()
return
index = self.library_view.currentIndex()
if index.isValid():
info = self.library_view.model().get_book_info(index)
BookInfo(self, info).show()
-
+
############################################################################
-
+
############################################################################
def location_selected(self, location):
'''
@@ -1041,13 +1041,13 @@ class Main(MainWindow, Ui_MainWindow):
self.action_edit.setEnabled(False)
self.action_convert.setEnabled(False)
self.view_menu.actions()[1].setEnabled(False)
-
+
def device_job_exception(self, id, description, exception, formatted_traceback):
'''
Handle exceptions in threaded device jobs.
'''
if 'Could not read 32 bytes on the control bus.' in str(exception):
- error_dialog(self, _('Error talking to device'),
+ error_dialog(self, _('Error talking to device'),
_('There was a temporary error talking to the device. Please unplug and reconnect the device and or reboot.')).show()
return
print >>sys.stderr, 'Error in job:', description.encode('utf8')
@@ -1063,7 +1063,7 @@ class Main(MainWindow, Ui_MainWindow):
msg += formatted_traceback
self.device_error_dialog.set_message(msg)
self.device_error_dialog.show()
-
+
def conversion_job_exception(self, id, description, exception, formatted_traceback, log):
try:
print >>sys.stderr, 'Error in job:', description.encode('utf8')
@@ -1084,15 +1084,13 @@ class Main(MainWindow, Ui_MainWindow):
if log:
msg += log.encode('utf8', 'ignore') if isinstance(log, unicode) else log.decode('utf8', 'ignore')
ConversionErrorDialog(self, 'Conversion Error', msg, show=True)
-
-
+
+
def initialize_database(self, settings):
self.library_path = settings.get('library path', None)
self.olddb = None
if self.library_path is None: # Need to migrate to new database layout
- dbpath = os.path.join(os.path.expanduser('~'), 'library1.db').decode(sys.getfilesystemencoding())
- self.database_path = qstring_to_unicode(settings.value("database path",
- QVariant(QString.fromUtf8(dbpath.encode('utf-8')))).toString())
+ self.database_path = settings.get('database path')
if not os.access(os.path.dirname(self.database_path), os.W_OK):
error_dialog(self, _('Database does not exist'), _('The directory in which the database should be: %s no longer exists. Please choose a new database location.')%self.database_path).exec_()
self.database_path = choose_dir(self, 'database path dialog', 'Choose new location for database')
@@ -1101,7 +1099,7 @@ class Main(MainWindow, Ui_MainWindow):
if not os.path.exists(self.database_path):
os.makedirs(self.database_path)
self.database_path = os.path.join(self.database_path, 'library1.db')
- settings.setValue('database path', QVariant(QString.fromUtf8(self.database_path.encode('utf-8'))))
+ settings.set('database path', self.database_path)
home = os.path.dirname(self.database_path)
if not os.path.exists(home):
home = os.getcwd()
@@ -1110,23 +1108,23 @@ class Main(MainWindow, Ui_MainWindow):
if not dir:
dir = os.path.dirname(self.database_path)
self.library_path = os.path.abspath(dir)
- self.olddb = LibraryDatabase(self.database_path)
-
-
-
+ self.olddb = LibraryDatabase(self.database_path)
+
+
+
def read_settings(self):
settings = Settings()
- settings.beginGroup("Main Window")
+ settings.beginGroup('Main Window')
geometry = settings.value('main window geometry', QVariant()).toByteArray()
self.restoreGeometry(geometry)
settings.endGroup()
self.initialize_database(settings)
set_sidebar_directories(None)
- set_filename_pat(qstring_to_unicode(settings.value('filename pattern', QVariant(get_filename_pat())).toString()))
- self.tool_bar.setIconSize(settings.value('toolbar icon size', QVariant(QSize(48, 48))).toSize())
+ set_filename_pat(settings.get('filename pattern', get_filename_pat()))
+ self.tool_bar.setIconSize(settings.get('toolbar icon size', QSize(48, 48)))
self.tool_bar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon if settings.get('show text in toolbar', True) else Qt.ToolButtonIconOnly)
-
-
+
+
def write_settings(self):
settings = Settings()
settings.beginGroup("Main Window")
@@ -1137,7 +1135,7 @@ class Main(MainWindow, Ui_MainWindow):
if self.device_connected:
self.memory_view.write_settings()
settings.endGroup()
-
+
def closeEvent(self, e):
msg = 'There are active jobs. Are you sure you want to quit?'
if self.job_manager.has_device_jobs():
@@ -1152,7 +1150,7 @@ class Main(MainWindow, Ui_MainWindow):
if d.exec_() != QMessageBox.Yes:
e.ignore()
return
-
+
self.job_manager.terminate_all_jobs()
self.write_settings()
self.detector.keep_going = False
@@ -1162,12 +1160,12 @@ class Main(MainWindow, Ui_MainWindow):
self.detector.terminate()
self.cover_cache.terminate()
e.accept()
-
+
def update_found(self, version):
os = 'windows' if iswindows else 'osx' if isosx else 'linux'
url = 'http://%s.kovidgoyal.net/download_%s'%(__appname__, os)
self.latest_version = _('Latest version: %s')%(url, version)
- self.vanity.setText(self.vanity_template%(dict(version=self.latest_version,
+ self.vanity.setText(self.vanity_template%(dict(version=self.latest_version,
device=self.device_info)))
self.vanity.update()
s = Settings()
@@ -1177,11 +1175,11 @@ class Main(MainWindow, Ui_MainWindow):
url = 'http://calibre.kovidgoyal.net/download_'+('windows' if iswindows else 'osx' if isosx else 'linux')
QDesktopServices.openUrl(QUrl(url))
s.set('update to version %s'%version, False)
-
+
def main(args=sys.argv):
from calibre import singleinstance
-
+
pid = os.fork() if islinux else -1
if pid <= 0:
app = Application(args)
@@ -1193,7 +1191,7 @@ def main(args=sys.argv):
if single_instance is not None and single_instance.is_running() and \
single_instance.send_message('launched:'+repr(sys.argv)):
return 0
-
+
QMessageBox.critical(None, 'Cannot Start '+__appname__,
'
%s is already running.
'%__appname__) return 1 @@ -1209,7 +1207,7 @@ def main(args=sys.argv): main.add_filesystem_book(sys.argv[1]) return app.exec_() return 0 - - + + if __name__ == '__main__': sys.exit(main()) diff --git a/src/calibre/library/cli.py b/src/calibre/library/cli.py index f440ba108a..ec4788203c 100644 --- a/src/calibre/library/cli.py +++ b/src/calibre/library/cli.py @@ -41,13 +41,13 @@ def do_list(db, fields, sort_by, ascending, search_text): for i in db.data: for j, field in enumerate(fields): widths[j] = max(widths[j], len(unicode(i[field]))) - + screen_width = terminal_controller.COLS if not screen_width: screen_width = 80 field_width = screen_width//len(fields) base_widths = map(lambda x: min(x+1, field_width), widths) - + while sum(base_widths) < screen_width: adjusted = False for i in range(len(widths)): @@ -57,13 +57,13 @@ def do_list(db, fields, sort_by, ascending, search_text): break if not adjusted: break - + widths = list(base_widths) titles = map(lambda x, y: '%-*s'%(x, y), widths, fields) print terminal_controller.GREEN + ''.join(titles)+terminal_controller.NORMAL - + wrappers = map(lambda x: TextWrapper(x-1), widths) - + for record in db.data: text = [wrappers[i].wrap(unicode(record[field]).encode('utf-8')) for i, field in enumerate(fields)] lines = max(map(len, text)) @@ -74,46 +74,46 @@ def do_list(db, fields, sort_by, ascending, search_text): sys.stdout.write(ft) sys.stdout.write(filler) print - + def command_list(args, dbpath): parser = get_parser(_( '''\ %prog list [options] -List the books available in the calibre database. -''' +List the books available in the calibre database. +''' )) - parser.add_option('-f', '--fields', default='title,authors', + parser.add_option('-f', '--fields', default='title,authors', help=_('The fields to display when listing books in the database. Should be a comma separated list of fields.\nAvailable fields: %s\nDefault: %%default')%','.join(FIELDS)) - parser.add_option('--sort-by', default='timestamp', + parser.add_option('--sort-by', default='timestamp', help=_('The field by which to sort the results.\nAvailable fields: %s\nDefault: %%default')%','.join(FIELDS)) parser.add_option('--ascending', default=False, action='store_true', help=_('Sort results in ascending order')) - parser.add_option('-s', '--search', default=None, + parser.add_option('-s', '--search', default=None, help=_('Filter the results by the search query. For the format of the search query, please see the search related documentation in the User Manual. Default is to do no filtering.')) opts, args = parser.parse_args(sys.argv[:1] + args) fields = [f.strip().lower() for f in opts.fields.split(',')] - + if not set(fields).issubset(FIELDS): parser.print_help() print print _('Invalid fields. Available fields:'), ','.join(FIELDS) return 1 - + db = get_db(dbpath, opts) if not opts.sort_by in FIELDS: parser.print_help() print print _('Invalid sort field. Available fields:'), ','.join(FIELDS) return 1 - + do_list(db, fields, opts.sort_by, opts.ascending, opts.search) return 0 - + class DevNull(object): - + def write(self, msg): pass NULL = DevNull() @@ -128,7 +128,7 @@ def do_add(db, paths, one_book_per_directory, recurse, add_duplicates): dirs.append(path) else: files.append(path) - + formats, metadata = [], [] for book in files: format = os.path.splitext(book)[1] @@ -141,15 +141,15 @@ def do_add(db, paths, one_book_per_directory, recurse, add_duplicates): mi.title = os.path.splitext(os.path.basename(book))[0] if not mi.authors: mi.authors = ['Unknown'] - + formats.append(format) metadata.append(mi) - + file_duplicates = db.add_books(files, formats, metadata, add_duplicates=add_duplicates) if not file_duplicates: file_duplicates = [] - - + + dir_dups = [] for dir in dirs: if recurse: @@ -160,9 +160,9 @@ def do_add(db, paths, one_book_per_directory, recurse, add_duplicates): if not dups: dups = [] dir_dups.extend(dups) - + sys.stdout = sys.__stdout__ - + if add_duplicates: for mi, formats in dir_dups: db.import_book(mi, formats) @@ -182,23 +182,23 @@ def do_add(db, paths, one_book_per_directory, recurse, add_duplicates): title = title.encode(preferred_encoding) print '\t', title+':' print '\t\t ', path - + if SingleApplication is not None: sa = SingleApplication('calibre GUI') sa.send_message('refreshdb:') finally: sys.stdout = sys.__stdout__ - - - + + + def command_add(args, dbpath): parser = get_parser(_( '''\ %prog add [options] file1 file2 file3 ... Add the specified files as books to the database. You can also specify directories, see -the directory related options below. -''' +the directory related options below. +''' )) parser.add_option('-1', '--one-book-per-directory', action='store_true', default=False, help=_('Assume that each directory has only a single logical book and that all files in it are different e-book formats of that book')) @@ -222,7 +222,7 @@ def do_remove(db, ids): else: for y in x: db.delete_book(y) - + if SingleApplication is not None: sa = SingleApplication('calibre GUI') sa.send_message('refreshdb:') @@ -242,7 +242,7 @@ list of id numbers (you can get id numbers by using the list command). For examp print print _('You must specify at least one book to remove') return 1 - + ids = [] for x in args[1].split(','): y = x.split('-') @@ -250,9 +250,9 @@ list of id numbers (you can get id numbers by using the list command). For examp ids.append(range(int(y[0], int(y[1])))) else: ids.append(int(y[0])) - + do_remove(get_db(dbpath, opts), ids) - + return 0 def do_add_format(db, id, fmt, buffer): @@ -273,7 +273,7 @@ by id. You can get id by using the list command. If the format already exists, i print print _('You must specify an id and an ebook file') return 1 - + id, file, fmt = int(args[1]), open(args[2], 'rb'), os.path.splitext(args[2])[-1] if not fmt: print _('ebook file must have an extension') @@ -299,7 +299,7 @@ do nothing. print print _('You must specify an id and a format') return 1 - + id, fmt = int(args[1]), args[2].upper() do_remove_format(get_db(dbpath, opts), id, fmt) return 0 @@ -311,11 +311,11 @@ def main(args=sys.argv): '''\ %%prog command [options] [arguments] -%%prog is the command line interface to the calibre books database. +%%prog is the command line interface to the calibre books database. command is one of: %s - + For help on an individual command: %%prog command --help ''' )%'\n '.join(commands)) @@ -328,10 +328,10 @@ For help on an individual command: %%prog command --help return 0 parser.print_help() return 1 - + command = eval('command_'+args[1]) dbpath = Settings().get('library path', os.path.expanduser('~')) - + return command(args[2:], dbpath) if __name__ == '__main__': diff --git a/src/calibre/translations/bg.po b/src/calibre/translations/bg.po index 35a6df932b..6cf334ee75 100644 --- a/src/calibre/translations/bg.po +++ b/src/calibre/translations/bg.po @@ -6,14 +6,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre 0.4.51\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-06-09 20:36+0000\n" +"POT-Creation-Date: 2008-06-12 20:18+0000\n" "PO-Revision-Date: 2008-05-24 06:23+0000\n" "Last-Translator: Kovid GoyalThere was an error reading from file: Metadata will be "
"updated in the database as well as the generated LRF file."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr ""
@@ -1399,26 +1399,26 @@ msgstr ""
msgid "Comma separated list of tags to remove from the books. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:61
msgid "No match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "Authors:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
msgid "Regular expression group name (?P For help visit %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2107,42 +2118,42 @@ msgid ""
" "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Cannot upload books to device there is no more free space available "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2273,6 +2284,17 @@ msgid ""
"href=\"%s\">%s There was an error reading from file: Error llegint de l'arxiu: Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1224,7 +1224,7 @@ msgstr ""
"Especifiqueu informació com ara títol i autor per al llibre. Aquesta "
"informació s'actualitza tant a la base de dades com al fitxer LRF."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1232,7 +1232,7 @@ msgstr ""
"Milloreu l'aparença del fitxer LRF generat, especificant la grandària de "
"lletra i l'espaiat entre paraules."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
@@ -1240,15 +1240,15 @@ msgstr ""
"Configuració de la pàgina del dispositiu, especificant ,marges i grandària "
"de la pantalla, entre d'altres."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr "Milloreu la detecció de capítols i seccions."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Ajuda no disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr ""
@@ -1574,26 +1574,26 @@ msgstr ""
msgid "Comma separated list of tags to remove from the books. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:61
msgid "No match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "Authors:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
msgid "Regular expression group name (?P For help visit %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2283,42 +2294,42 @@ msgid ""
" "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Cannot upload books to device there is no more free space available "
msgstr " No puc desar llibres al dispositiu perquè no hi ha espai restant "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "No puc editar les meta-dades"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2451,6 +2462,17 @@ msgid ""
"href=\"%s\">%s There was an error reading from file: Es trat ein Fehler beim Lesen dieser Datei auf: Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1285,7 +1285,7 @@ msgstr ""
"Daten werden sowohl in der Datenbank als auch in der erstellten LRF Datei "
"aktualisiert."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1293,7 +1293,7 @@ msgstr ""
"Aussehen der erstellten LRF Datei durch die Angabe von Schriftgrößen und "
"Wortabständen angleichen."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
@@ -1301,15 +1301,15 @@ msgstr ""
"Seiteneinstellungen wie Ränder und die Bildschirmgröße des Zielgeräts "
"angeben."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr "Feineinstellung der Erkennung von Kapitel- und Absatzüberschriften."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Keine Hilfe verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr "eBooks auf einmal zu LRF konvertieren"
@@ -1648,7 +1648,7 @@ msgid "Comma separated list of tags to remove from the books. "
msgstr ""
"Durch getrennte Liste der Etiketten, die von den Büchern entfernt werden. "
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A Test For help visit %s.kovidgoyal.net Hilfe gibt es online bei %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2414,8 +2425,8 @@ msgstr ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Es existieren bereits Bücher mit dem selben Titel in der Datenbank. "
"Sollen die folgenden Bücher trotzdem hinzugefügt werden? Cannot upload books to device there is no more free space available "
msgstr ""
" Es können keine Bücher mehr auf das Gerät geladen werden, da der "
"Gerätespeicher voll ist "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr "Lösche Bücher vom Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "Kann Metadaten nicht bearbeiten"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2594,6 +2605,20 @@ msgstr ""
"Letzte Version: %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid ""
+"%s has been updated to version %s. See the new features. "
+"Visit the download page?"
+msgstr ""
+"%s wurde auf Version %s aktualisiert. Sehen Sie sich die neuen Features an. "
+"Download Seite besuchen?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid "Update available"
+msgstr "Neue Version verfügbar"
+
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255
msgid "calibre"
msgstr "calibre"
@@ -2733,11 +2758,11 @@ msgstr "Ungültiger regulärer Ausdruck"
msgid "Invalid regular expression: %s"
msgstr "Ungültiger regulärer Ausdruck: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166
msgid "Library"
msgstr "Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167
msgid ""
"Reader\n"
"%s available"
@@ -2745,7 +2770,7 @@ msgstr ""
"Reader\n"
"%s verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168
msgid ""
"Card\n"
"%s available"
@@ -2753,16 +2778,16 @@ msgstr ""
"Karte\n"
"%s verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:172
msgid "Click to see the list of books available on your computer"
msgstr "Ein Klick zeigt die Liste der auf dem Computer vorhandenen Bücher"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:173
msgid "Click to see the list of books in the main memory of your reader"
msgstr ""
"Ein Klick zeigt die Liste der im Hauptspeicher des Geräts vorhandenen Bücher"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174
msgid "Click to see the list of books on the storage card in your reader"
msgstr ""
"Ein Klick zeigt die Liste der auf der Speicherkarte des Geräts vorhandenen "
@@ -2966,7 +2991,7 @@ msgstr ""
msgid "Job killed by user"
msgstr "Auftrag durch Benutzer abgebrochen"
-#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:118
+#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:124
msgid "Could not initialize the fontconfig library"
msgstr "Konnte die fontconfig library nicht initialisieren"
@@ -3159,7 +3184,7 @@ msgstr "Versuche Umschlagbild zu laden..."
msgid "Starting download [%d thread(s)]..."
msgstr "Starte Download von [%d Thread(s)]..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:650
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:649
msgid "Feeds downloaded to %s"
msgstr "Feeds wurden nach %s heruntergeladen"
@@ -3201,7 +3226,7 @@ msgstr "Laden der Artikel schlug fehl: %s"
msgid "Fetching feed"
msgstr "Rufe Feed ab"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:381
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:382
msgid ""
"%prog URL\n"
"\n"
@@ -3211,13 +3236,13 @@ msgstr ""
"\n"
"URL ist z.B. http://google.com"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:384
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:385
msgid "Base directory into which URL is saved. Default is %default"
msgstr ""
"Grundverzeichnis, in das die URL gespeichert wird. Voreinstellung ist "
"%default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:387
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:388
msgid ""
"Timeout in seconds to wait for a response from the server. Default: %default "
"s"
@@ -3225,7 +3250,7 @@ msgstr ""
"Timeout in Sekunden beim Warten auf eine Antwort vom Server. Voreinstellung: "
"%default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:390
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:391
msgid ""
"Maximum number of levels to recurse i.e. depth of links to follow. Default "
"%default"
@@ -3233,7 +3258,7 @@ msgstr ""
"Maximale Zahl von einbezogenen Ebenen, z.B. Tiefe der Links, die verfolgt "
"werden. Voreinstellung %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:393
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:394
msgid ""
"The maximum number of files to download. This only applies to files from tags. Default is %default"
@@ -3241,7 +3266,7 @@ msgstr ""
"Höchstzahl der Dateien, die geladen werden. Dies trifft nur auf Dateien aus "
" Tags zu. Voreinstellung ist %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:395
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:396
msgid ""
"Minimum interval in seconds between consecutive fetches. Default is %default "
"s"
@@ -3249,7 +3274,7 @@ msgstr ""
"Kleinstes Intervall in Sekunden zwischen aufeinander folgenden Abrufen. "
"Voreinstellung ist %default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:397
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:398
msgid ""
"The character encoding for the websites you are trying to download. The "
"default is to try and guess the encoding."
@@ -3257,7 +3282,7 @@ msgstr ""
"Zeichenkodierung für Webseiten, die zu laden versucht werden. In der "
"Voreinstellung wird versucht, die Kodierung zu erraten."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:399
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:400
msgid ""
"Only links that match this regular expression will be followed. This option "
"can be specified multiple times, in which case as long as a link matches any "
@@ -3268,7 +3293,7 @@ msgstr ""
"sie einem Regulären Ausdruck entsprechen. In der Voreinstellung werden alle "
"Links verfolgt."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:401
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:402
msgid ""
"Any link that matches this regular expression will be ignored. This option "
"can be specified multiple times, in which case as long as any regexp matches "
@@ -3282,10 +3307,10 @@ msgstr ""
"Links ignoriert. Falls beide --filter-regexp und --match-regexp angegeben "
"sind, wird --filter-regexp zuerst angewendet."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:403
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
msgid "Do not download CSS stylesheets."
msgstr "Lade CSS Stylesheets nicht herunter."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:405
msgid "Show detailed output information. Useful for debugging"
msgstr "Zeige detailierte Ausgabeinformation. Hilfreich zur Fehlersuche."
diff --git a/src/calibre/translations/es.po b/src/calibre/translations/es.po
index 7cdb8eef02..ea7b148db3 100644
--- a/src/calibre/translations/es.po
+++ b/src/calibre/translations/es.po
@@ -10,14 +10,14 @@ msgid ""
msgstr ""
"Project-Id-Version: es\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-06-09 20:36+0000\n"
-"PO-Revision-Date: 2008-06-10 21:38+0000\n"
+"POT-Creation-Date: 2008-06-12 20:18+0000\n"
+"PO-Revision-Date: 2008-06-12 22:40+0000\n"
"Last-Translator: S. Dorscht There was an error reading from file: Hubo un error leyendo el archivo: Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1324,7 +1325,7 @@ msgstr ""
"Especificar datos como título y autor para el libro. Esta información se "
"actualiza tanto en la base de datos como en el archivo LRF."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1332,22 +1333,22 @@ msgstr ""
"Mejorar la apariencia del archivo LRF generado, especificando el tamaño de "
"fuente y el espaciado entre palabras."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
msgstr ""
"Configuración de página del dispositivo: márgenes y tamaño de la pantalla"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr "Afinar la detección de capítulos y secciones."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Ayuda no disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr "Convertir ebooks a LRF en masa"
@@ -1684,7 +1685,7 @@ msgstr "&Quitar etiquetas"
msgid "Comma separated list of tags to remove from the books. "
msgstr "Lista de etiquetas separadas por comas para eliminar de los libros "
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr "Nombre de grupo de expresión regular (?P For help visit %s.kovidgoyal.net Para mas ayuda, visite %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2453,8 +2465,8 @@ msgstr ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Ya existen libros con el mismo título en la base de datos. ¿Añadirlo de "
"todas formas? Cannot upload books to device there is no more free space available "
msgstr ""
" No se pueden guardar los libros porque no hay espacio en el dispositivo "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr "Eliminando libros del dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "No se pueden editar los metadatos"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2611,7 +2623,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076
msgid "Conversion Error"
-msgstr ""
+msgstr "Error de conversión"
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1098
msgid "Database does not exist"
@@ -2633,6 +2645,17 @@ msgstr ""
"Última versión: %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid ""
+"%s has been updated to version %s. See the new features. "
+"Visit the download page?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid "Update available"
+msgstr "Actualización disponible"
+
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255
msgid "calibre"
msgstr "calibre"
@@ -2771,11 +2794,11 @@ msgstr "Expresión regular no válida"
msgid "Invalid regular expression: %s"
msgstr "Expresión regular no valida: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166
msgid "Library"
msgstr "Biblioteca"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167
msgid ""
"Reader\n"
"%s available"
@@ -2783,7 +2806,7 @@ msgstr ""
"Sony Reader\n"
"%s disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168
msgid ""
"Card\n"
"%s available"
@@ -2791,15 +2814,15 @@ msgstr ""
"Tarjeta\n"
"%s disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:172
msgid "Click to see the list of books available on your computer"
msgstr "Haga click para ver la lista de libros disponibles en su ordenador"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:173
msgid "Click to see the list of books in the main memory of your reader"
msgstr "Haga click para ver la lista de libros disponibles en su lector"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174
msgid "Click to see the list of books on the storage card in your reader"
msgstr ""
"Haga click para ver la lista de libros en la tarjeta de almacenamiento de su "
@@ -2835,7 +2858,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/cli.py:92
msgid "Sort results in ascending order"
-msgstr ""
+msgstr "Clasificar los resultados en orden ascendente"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:94
msgid ""
@@ -2857,6 +2880,8 @@ msgid ""
"The following books were not added as they already exist in the database "
"(see --duplicates option):"
msgstr ""
+"Los siguientes libros no se han añadido como ya existen en la base de datos "
+"(véase la opción --duplicates)"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:195
msgid ""
@@ -2882,10 +2907,12 @@ msgid ""
"Add books to database even if they already exist. Comparison is done based "
"on book titles."
msgstr ""
+"Añadir a base de datos de libros, aunque ya existen. La comparación se "
+"realiza sobre la base de títulos de libros."
#: /home/kovid/work/calibre/src/calibre/library/cli.py:213
msgid "You must specify at least one file to add"
-msgstr ""
+msgstr "Debe especificar al menos un archivo para añadir"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:231
msgid ""
@@ -2898,7 +2925,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/cli.py:243
msgid "You must specify at least one book to remove"
-msgstr ""
+msgstr "Debe especificar al menos un libro para eliminar"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:263
msgid ""
@@ -2911,11 +2938,11 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/cli.py:274
msgid "You must specify an id and an ebook file"
-msgstr ""
+msgstr "Debe especificar un ID y un ebook archivo"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:279
msgid "ebook file must have an extension"
-msgstr ""
+msgstr "ebook archivo debe tener una extensión"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:287
msgid ""
@@ -2929,7 +2956,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/cli.py:300
msgid "You must specify an id and a format"
-msgstr ""
+msgstr "Debe especificar un ID y un formato"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:310
msgid ""
@@ -2947,7 +2974,7 @@ msgstr ""
msgid "Job killed by user"
msgstr "Trabajo detenido por el usuario"
-#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:118
+#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:124
msgid "Could not initialize the fontconfig library"
msgstr ""
@@ -3143,7 +3170,7 @@ msgstr "Intentando descargar la portada"
msgid "Starting download [%d thread(s)]..."
msgstr "Iniciando la descarga [%d hilo(s)]"
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:650
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:649
msgid "Feeds downloaded to %s"
msgstr "Feeds descargados a %s"
@@ -3184,7 +3211,7 @@ msgstr "Error en la descarga del artículo: %s"
msgid "Fetching feed"
msgstr "Buscando newsfeed"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:381
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:382
msgid ""
"%prog URL\n"
"\n"
@@ -3194,11 +3221,11 @@ msgstr ""
"\n"
"Donde URL es por ejemplo http://google.com"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:384
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:385
msgid "Base directory into which URL is saved. Default is %default"
msgstr "Directorio base en el cual se almacena URL. Por omisión es %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:387
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:388
msgid ""
"Timeout in seconds to wait for a response from the server. Default: %default "
"s"
@@ -3206,7 +3233,7 @@ msgstr ""
"Tiempo máximo de espera de respuesta por parte del servidor (en segundos). "
"Por omisión es %default segundo(s)"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:390
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:391
msgid ""
"Maximum number of levels to recurse i.e. depth of links to follow. Default "
"%default"
@@ -3214,7 +3241,7 @@ msgstr ""
"Máximo número de niveles de recursión, es decir, profundidad de los enlaces "
"a seguir. Por omisión %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:393
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:394
msgid ""
"The maximum number of files to download. This only applies to files from tags. Default is %default"
@@ -3222,7 +3249,7 @@ msgstr ""
"El número máximo de archivos a descargar. Esto se aplica solamente a "
"archivos procedentes de una etiqueta . Por omisión es %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:395
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:396
msgid ""
"Minimum interval in seconds between consecutive fetches. Default is %default "
"s"
@@ -3230,7 +3257,7 @@ msgstr ""
"Intervalo minimo de segundos entre adquisiciones de datos consecutivas. Por "
"omisión %s segundos"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:397
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:398
msgid ""
"The character encoding for the websites you are trying to download. The "
"default is to try and guess the encoding."
@@ -3238,7 +3265,7 @@ msgstr ""
"Codificación de caracteres para los sitios web que está intentando "
"descargar. Por omisión se intentará averiguar la codificación."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:399
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:400
msgid ""
"Only links that match this regular expression will be followed. This option "
"can be specified multiple times, in which case as long as a link matches any "
@@ -3249,7 +3276,7 @@ msgstr ""
"de las expresiones regulares, el enlace será seguido. Por omisión todos los "
"enlaces se siguen."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:401
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:402
msgid ""
"Any link that matches this regular expression will be ignored. This option "
"can be specified multiple times, in which case as long as any regexp matches "
@@ -3263,10 +3290,10 @@ msgstr ""
"ningún enlace se ignora. Si ambas opciones --filter-regexp y --match-regexp "
"so usadas, entonces --filter-regexp se aplica primero."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:403
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
msgid "Do not download CSS stylesheets."
msgstr "No descargar hojas de estilo CSS"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:405
msgid "Show detailed output information. Useful for debugging"
msgstr "Mostrar información de salida detallada. Útil para depuración"
diff --git a/src/calibre/translations/fr.po b/src/calibre/translations/fr.po
index f173663776..ce9997db8d 100644
--- a/src/calibre/translations/fr.po
+++ b/src/calibre/translations/fr.po
@@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre 0.4.22\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-06-09 20:36+0000\n"
+"POT-Creation-Date: 2008-06-12 20:18+0000\n"
"PO-Revision-Date: 2008-05-24 06:22+0000\n"
"Last-Translator: FixB There was an error reading from file: Il y a eu une erreur à la lecture du fichier : Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1274,7 +1274,7 @@ msgstr ""
"Définit les metadata comme le titre et l'auteur du livre. Les metadata "
"seront modifiées dans la base de données et dans le fichier LRF généré."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1282,7 +1282,7 @@ msgstr ""
"Ajuste la présentation du fichier LRF généré en définissant des paramètres "
"tels que la taille des polices et l'espacement entre les mots."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
@@ -1290,15 +1290,15 @@ msgstr ""
"Définit les paramètres de la pages tels que les marges et la taille de "
"l'écran du lecteur cible."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr "Peaufiner la détection des chapitres et des en-têtes de section."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Aucune aide n'est disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr ""
@@ -1625,7 +1625,7 @@ msgstr "&Supprime des mots-clefs :"
msgid "Comma separated list of tags to remove from the books. "
msgstr "Liste de mots-clefs séparés par des virgules à retirer des livres. "
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:61
msgid "No match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "Authors:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
msgid "Regular expression group name (?P For help visit %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2343,8 +2354,8 @@ msgid ""
" "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Des livres ayant le même titre existent déjà dans la base de données. Les "
"ajouter quand même ? Cannot upload books to device there is no more free space available "
msgstr ""
" Impossible d'envoyer les livres sur le lecteur : il n'y a plus assez "
"d'espace mémoire disponible "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "Erreur à l'édition des metadat"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2518,6 +2529,17 @@ msgid ""
"href=\"%s\">%s There was an error reading from file: Si è verificato un errore nella lettura del file: Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1278,7 +1278,7 @@ msgstr ""
"Specifica metadati come il titolo e l'autore del libro. I metadati saranno "
"aggiornati nel database e nel file LRF generato"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1286,7 +1286,7 @@ msgstr ""
"Aggiusta la visualizzazione del file LRF generato specificando parametri "
"come la dimensione dei caratteri e la spaziatura tra le parole"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
@@ -1294,17 +1294,17 @@ msgstr ""
"Specifica le impostazioni della pagina come i margini e la dimensione dello "
"schermo del dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr ""
"Mette a punto in modo fine l'individuazione delle intestazioni dei capitoli "
"e delle sezioni"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Nessun aiuto disponibile"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr "Conversione in gruppo di libri in LRF"
@@ -1643,7 +1643,7 @@ msgstr "&Rimuovi tag:"
msgid "Comma separated list of tags to remove from the books. "
msgstr "Lista separata da virgole dei tag da rimuovere dal libro "
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr "Nome del gruppo per l'espressione regolare (?P< title>)"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:61
msgid "No match"
msgstr "Nessuna corrispondenza"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "Authors:"
msgstr "Autori:"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
msgid "Regular expression group name (?P For help visit %s.kovidgoyal.net Per aiuto visitare %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2401,8 +2412,8 @@ msgstr ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Nel database sono già presenti libri con i seguenti titoli. Aggiungerli "
"ugualmente? Cannot upload books to device there is no more free space available "
msgstr ""
" Impossibile salvare libri sul dispositivo perché non c'è più spazio "
"disponibile "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr "Cancellamento libri dal dispositivo."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "Impossibile modificare i metadati"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2583,6 +2594,20 @@ msgstr ""
"Ultima versione: %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid ""
+"%s has been updated to version %s. See the new features. "
+"Visit the download page?"
+msgstr ""
+"%s è stato aggiornato alla versione %s. Lista delle nuove "
+"funzionalità. Una visita alla pagina del download?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid "Update available"
+msgstr "Aggiornamento disponibile"
+
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255
msgid "calibre"
msgstr "calibre"
@@ -2721,11 +2746,11 @@ msgstr "Espressione regolare non valida"
msgid "Invalid regular expression: %s"
msgstr "Espressione regolare non valida: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166
msgid "Library"
msgstr "Biblioteca"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167
msgid ""
"Reader\n"
"%s available"
@@ -2733,7 +2758,7 @@ msgstr ""
"Lettore\n"
"%s disponibili"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168
msgid ""
"Card\n"
"%s available"
@@ -2741,18 +2766,18 @@ msgstr ""
"Scheda\n"
"%s disponibili"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:172
msgid "Click to see the list of books available on your computer"
msgstr ""
"Fare clic per vedere la lista di libri disponibili sul proprio computer"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:173
msgid "Click to see the list of books in the main memory of your reader"
msgstr ""
"Fare clic per vedere la lista di libri nella memoria principale del proprio "
"lettore"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174
msgid "Click to see the list of books on the storage card in your reader"
msgstr ""
"Fare clic per vedere la lista di libri nella scheda di memoria del proprio "
@@ -2945,7 +2970,7 @@ msgstr ""
msgid "Job killed by user"
msgstr "Lavoro terminato dall'utente"
-#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:118
+#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:124
msgid "Could not initialize the fontconfig library"
msgstr "Impossibile inizializzare la libreria fontconfig"
@@ -3138,7 +3163,7 @@ msgstr "Tentativo di scaricamento della copertina..."
msgid "Starting download [%d thread(s)]..."
msgstr "Inizio scaricamento [%d articolo(i)]..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:650
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:649
msgid "Feeds downloaded to %s"
msgstr "Feed scaricati in %s"
@@ -3180,7 +3205,7 @@ msgstr "Scaricamento fallito dell'articolo: %s"
msgid "Fetching feed"
msgstr "Scaricamento feed"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:381
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:382
msgid ""
"%prog URL\n"
"\n"
@@ -3190,11 +3215,11 @@ msgstr ""
"\n"
"Dov'è l'URL. Esempio: http://google.com"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:384
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:385
msgid "Base directory into which URL is saved. Default is %default"
msgstr "Cartella base in cui le URL sono salvate. Predefinita: %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:387
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:388
msgid ""
"Timeout in seconds to wait for a response from the server. Default: %default "
"s"
@@ -3202,7 +3227,7 @@ msgstr ""
"Timeout in secondi da aspettare per una risposta dal server. Predefinito: "
"%default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:390
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:391
msgid ""
"Maximum number of levels to recurse i.e. depth of links to follow. Default "
"%default"
@@ -3210,7 +3235,7 @@ msgstr ""
"Numero massimo di livelli ricorsivi, cioè profondità dei link da seguire. "
"Predefinito: %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:393
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:394
msgid ""
"The maximum number of files to download. This only applies to files from tags. Default is %default"
@@ -3218,7 +3243,7 @@ msgstr ""
"Il numero massimo di file da scaricare. Questa si applica solo ai file dai "
"tag . Predefinito: %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:395
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:396
msgid ""
"Minimum interval in seconds between consecutive fetches. Default is %default "
"s"
@@ -3226,7 +3251,7 @@ msgstr ""
"Intervallo minimo in secondi tra due scaricamenti consecutivi. Predefinito: "
"%default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:397
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:398
msgid ""
"The character encoding for the websites you are trying to download. The "
"default is to try and guess the encoding."
@@ -3234,7 +3259,7 @@ msgstr ""
"La codifica caratteri del sito webb che si sta cercando di scaricare. "
"L'impostazione predefinita è quella di provare a indovinare la codifica"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:399
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:400
msgid ""
"Only links that match this regular expression will be followed. This option "
"can be specified multiple times, in which case as long as a link matches any "
@@ -3245,7 +3270,7 @@ msgstr ""
"un link corrisponde a una delle espressioni regolari verrà seguito. Per "
"impostazione predefinita i link non vengono seguiti"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:401
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:402
msgid ""
"Any link that matches this regular expression will be ignored. This option "
"can be specified multiple times, in which case as long as any regexp matches "
@@ -3260,10 +3285,10 @@ msgstr ""
"sia --filter-regexp che --match-regexp, --filter-regexp viene applicata per "
"prima"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:403
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
msgid "Do not download CSS stylesheets."
msgstr "Non scaricare i fogli di stile CSS"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:405
msgid "Show detailed output information. Useful for debugging"
msgstr "Mostra un output dettagliato. Utile per il debugging"
diff --git a/src/calibre/translations/nds.po b/src/calibre/translations/nds.po
index 8154386af0..6090676765 100644
--- a/src/calibre/translations/nds.po
+++ b/src/calibre/translations/nds.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: nds\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-06-09 20:36+0000\n"
-"PO-Revision-Date: 2008-06-10 21:37+0000\n"
+"POT-Creation-Date: 2008-06-12 20:18+0000\n"
+"PO-Revision-Date: 2008-06-12 22:39+0000\n"
"Last-Translator: S. Dorscht There was an error reading from file: Es trat ein Fehler beim Lesen dieser Datei auf: Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1285,7 +1285,7 @@ msgstr ""
"Daten werden sowohl in der Datenbank als auch in der erstellten LRF Datei "
"aktualisiert."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1293,7 +1293,7 @@ msgstr ""
"Aussehen der erstellten LRF Datei durch die Angabe von Schriftgrößen und "
"Wortabständen angleichen."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
@@ -1301,15 +1301,15 @@ msgstr ""
"Seiteneinstellungen wie Ränder und die Bildschirmgröße des Zielgeräts "
"angeben."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr "Feineinstellung der Erkennung von Kapitel- und Absatzüberschriften."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Keine Hilfe verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr "eBooks auf einmal zu LRF konvertieren"
@@ -1648,7 +1648,7 @@ msgid "Comma separated list of tags to remove from the books. "
msgstr ""
"Durch getrennte Liste der Etiketten, die von den Büchern entfernt werden. "
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A Test For help visit %s.kovidgoyal.net Hilfe gibt es online bei %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2414,8 +2425,8 @@ msgstr ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Es existieren bereits Bücher mit dem selben Titel in der Datenbank. "
"Sollen die folgenden Bücher trotzdem hinzugefügt werden? Cannot upload books to device there is no more free space available "
msgstr ""
" Es können keine Bücher mehr auf das Gerät geladen werden, da der "
"Gerätespeicher voll ist "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr "Lösche Bücher vom Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "Kann Metadaten nicht bearbeiten"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2594,6 +2605,20 @@ msgstr ""
"Letzte Version: %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid ""
+"%s has been updated to version %s. See the new features. "
+"Visit the download page?"
+msgstr ""
+"%s wurde auf Version %s aktualisiert. Sehen Sie sich die neuen Features an. "
+"Download Seite besuchen?"
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid "Update available"
+msgstr "Neue Version verfügbar"
+
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255
msgid "calibre"
msgstr "calibre"
@@ -2733,11 +2758,11 @@ msgstr "Ungültiger regulärer Ausdruck"
msgid "Invalid regular expression: %s"
msgstr "Ungültiger regulärer Ausdruck: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166
msgid "Library"
msgstr "Bibliothek"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167
msgid ""
"Reader\n"
"%s available"
@@ -2745,7 +2770,7 @@ msgstr ""
"Reader\n"
"%s verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168
msgid ""
"Card\n"
"%s available"
@@ -2753,16 +2778,16 @@ msgstr ""
"Karte\n"
"%s verfügbar"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:172
msgid "Click to see the list of books available on your computer"
msgstr "Ein Klick zeigt die Liste der auf dem Computer vorhandenen Bücher"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:173
msgid "Click to see the list of books in the main memory of your reader"
msgstr ""
"Ein Klick zeigt die Liste der im Hauptspeicher des Geräts vorhandenen Bücher"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174
msgid "Click to see the list of books on the storage card in your reader"
msgstr ""
"Ein Klick zeigt die Liste der auf der Speicherkarte des Geräts vorhandenen "
@@ -2966,7 +2991,7 @@ msgstr ""
msgid "Job killed by user"
msgstr "Auftrag durch Benutzer abgebrochen"
-#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:118
+#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:124
msgid "Could not initialize the fontconfig library"
msgstr "Konnte die fontconfig library nicht initialisieren"
@@ -3159,7 +3184,7 @@ msgstr "Versuche Umschlagbild zu laden..."
msgid "Starting download [%d thread(s)]..."
msgstr "Starte Download von [%d Thread(s)]..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:650
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:649
msgid "Feeds downloaded to %s"
msgstr "Feeds wurden nach %s heruntergeladen"
@@ -3201,7 +3226,7 @@ msgstr "Laden der Artikel schlug fehl: %s"
msgid "Fetching feed"
msgstr "Rufe Feed ab"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:381
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:382
msgid ""
"%prog URL\n"
"\n"
@@ -3211,13 +3236,13 @@ msgstr ""
"\n"
"URL ist z.B. http://google.com"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:384
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:385
msgid "Base directory into which URL is saved. Default is %default"
msgstr ""
"Grundverzeichnis, in das die URL gespeichert wird. Voreinstellung ist "
"%default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:387
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:388
msgid ""
"Timeout in seconds to wait for a response from the server. Default: %default "
"s"
@@ -3225,7 +3250,7 @@ msgstr ""
"Timeout in Sekunden beim Warten auf eine Antwort vom Server. Voreinstellung: "
"%default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:390
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:391
msgid ""
"Maximum number of levels to recurse i.e. depth of links to follow. Default "
"%default"
@@ -3233,7 +3258,7 @@ msgstr ""
"Maximale Zahl von einbezogenen Ebenen, z.B. Tiefe der Links, die verfolgt "
"werden. Voreinstellung %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:393
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:394
msgid ""
"The maximum number of files to download. This only applies to files from tags. Default is %default"
@@ -3241,7 +3266,7 @@ msgstr ""
"Höchstzahl der Dateien, die geladen werden. Dies trifft nur auf Dateien aus "
" Tags zu. Voreinstellung ist %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:395
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:396
msgid ""
"Minimum interval in seconds between consecutive fetches. Default is %default "
"s"
@@ -3249,7 +3274,7 @@ msgstr ""
"Kleinstes Intervall in Sekunden zwischen aufeinander folgenden Abrufen. "
"Voreinstellung ist %default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:397
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:398
msgid ""
"The character encoding for the websites you are trying to download. The "
"default is to try and guess the encoding."
@@ -3257,7 +3282,7 @@ msgstr ""
"Zeichenkodierung für Webseiten, die zu laden versucht werden. In der "
"Voreinstellung wird versucht, die Kodierung zu erraten."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:399
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:400
msgid ""
"Only links that match this regular expression will be followed. This option "
"can be specified multiple times, in which case as long as a link matches any "
@@ -3268,7 +3293,7 @@ msgstr ""
"sie einem Regulären Ausdruck entsprechen. In der Voreinstellung werden alle "
"Links verfolgt."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:401
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:402
msgid ""
"Any link that matches this regular expression will be ignored. This option "
"can be specified multiple times, in which case as long as any regexp matches "
@@ -3282,10 +3307,10 @@ msgstr ""
"Links ignoriert. Falls beide --filter-regexp und --match-regexp angegeben "
"sind, wird --filter-regexp zuerst angewendet."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:403
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
msgid "Do not download CSS stylesheets."
msgstr "Lade CSS Stylesheets nicht herunter."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:405
msgid "Show detailed output information. Useful for debugging"
msgstr "Zeige detailierte Ausgabeinformation. Hilfreich zur Fehlersuche."
diff --git a/src/calibre/translations/nl.po b/src/calibre/translations/nl.po
index 4320d1c790..a901375f9e 100644
--- a/src/calibre/translations/nl.po
+++ b/src/calibre/translations/nl.po
@@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME There was an error reading from file: Er is een fout opgetreden bij het lezen van bestand: Metadata will be "
"updated in the database as well as the generated LRF file."
@@ -1251,7 +1251,7 @@ msgstr ""
"Geef metadata zoals de titel en auteur van het boek. Metadata zal worden "
"geupload in de database, evenals in het gegenereerde LRF bestand."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
@@ -1259,7 +1259,7 @@ msgstr ""
"Verander de weergave van het gegenereerde LRF bestand door de lettertype "
"grootte en spatiëring tussen woorden aan te passen."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
@@ -1267,15 +1267,15 @@ msgstr ""
"Specificeer de pagina indeling zoals kantlijnen en de scherm grootte van het "
"doel aparaat."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr "stel de detectie van hoofdstuk en sectie koppen in"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr "Help is niet beschikbaar"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr "Converteer meerdere eboeken naar LRF"
@@ -1614,7 +1614,7 @@ msgid "Comma separated list of tags to remove from the books. "
msgstr ""
"Lijst van tags die moeten worden verwijderd, gescheiden met komma's. "
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr "Regiuliere expressie groep naam (?P For help visit %s.kovidgoyal.net Voor assistentie, bezoek %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2378,8 +2389,8 @@ msgstr ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Boeken met de volgende titels bestaan al in de database. Wil je ze echt "
"toevoegen? Cannot upload books to device there is no more free space available "
msgstr ""
" De boeken kunnen niet worden geupload naar de lezer, omdat er onvoldoende "
"schijfruimte beschikbaar is "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr "Boeken worden verwijderd van de lezer."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr "Metedata kan niet worden gewijzigd"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2558,6 +2569,17 @@ msgstr ""
"Laatste versie: %s"
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid ""
+"%s has been updated to version %s. See the new features. "
+"Visit the download page?"
+msgstr ""
+
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1155
+msgid "Update available"
+msgstr ""
+
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:255
msgid "calibre"
msgstr "Calibre"
@@ -2696,11 +2718,11 @@ msgstr "Ongeldige reguliere expressie"
msgid "Invalid regular expression: %s"
msgstr "Ongeldige reguliere expressie: %s"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:163
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166
msgid "Library"
msgstr "Bibliotheek"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:164
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167
msgid ""
"Reader\n"
"%s available"
@@ -2708,7 +2730,7 @@ msgstr ""
"Lezer\n"
"%s beschikbaar"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:165
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168
msgid ""
"Card\n"
"%s available"
@@ -2716,16 +2738,16 @@ msgstr ""
"Kaart\n"
"%s beschikbaar"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:172
msgid "Click to see the list of books available on your computer"
msgstr "Klik om een de lijst met boeken op uw computer te zien"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:170
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:173
msgid "Click to see the list of books in the main memory of your reader"
msgstr ""
"Klik om de lijst met boeken in het hoofdgeheugen van uw lezer te zien"
-#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:171
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174
msgid "Click to see the list of books on the storage card in your reader"
msgstr "Klik om de lijst met boeken op de opslag kaart van uw lezer te zien"
@@ -2921,7 +2943,7 @@ msgstr ""
msgid "Job killed by user"
msgstr "Opdracht beëindigd door gebruiker"
-#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:118
+#: /home/kovid/work/calibre/src/calibre/utils/fontconfig.py:124
msgid "Could not initialize the fontconfig library"
msgstr ""
@@ -3111,7 +3133,7 @@ msgstr "Probeer omslag te downloaden"
msgid "Starting download [%d thread(s)]..."
msgstr "Begin download [%d thread(s)]..."
-#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:650
+#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:649
msgid "Feeds downloaded to %s"
msgstr "Feeds gedownload tot %s"
@@ -3153,7 +3175,7 @@ msgstr "Artikel download mislukt: %s"
msgid "Fetching feed"
msgstr "Downloading feed"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:381
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:382
msgid ""
"%prog URL\n"
"\n"
@@ -3163,12 +3185,12 @@ msgstr ""
"\n"
"Waar URL is bijvoorbeeld http://google.com"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:384
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:385
msgid "Base directory into which URL is saved. Default is %default"
msgstr ""
"basis folder waar de URL naar toe word geschreven. Standaard is %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:387
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:388
msgid ""
"Timeout in seconds to wait for a response from the server. Default: %default "
"s"
@@ -3176,7 +3198,7 @@ msgstr ""
"Timeout in seconden om te wachten op een antwoord van de server. Standaard: "
"%default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:390
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:391
msgid ""
"Maximum number of levels to recurse i.e. depth of links to follow. Default "
"%default"
@@ -3184,7 +3206,7 @@ msgstr ""
"Maximum aantal level om recursief te zoeken -- de diepte om links te volgen. "
"Standaard %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:393
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:394
msgid ""
"The maximum number of files to download. This only applies to files from tags. Default is %default"
@@ -3192,7 +3214,7 @@ msgstr ""
"Het maximum aantal bestanden te downloaden. Dit is alleen van toepassing op "
"bestanden in tags. Standaard is %default"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:395
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:396
msgid ""
"Minimum interval in seconds between consecutive fetches. Default is %default "
"s"
@@ -3200,7 +3222,7 @@ msgstr ""
"Minimum inteval in seconden tussen aaneensluitende downloads. Standaard is "
"%default s"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:397
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:398
msgid ""
"The character encoding for the websites you are trying to download. The "
"default is to try and guess the encoding."
@@ -3208,7 +3230,7 @@ msgstr ""
"De karakter codering voor de websites die je probeert te downloaden. "
"Standaard zal er worden geprobeerd om de codering te raden."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:399
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:400
msgid ""
"Only links that match this regular expression will be followed. This option "
"can be specified multiple times, in which case as long as a link matches any "
@@ -3219,7 +3241,7 @@ msgstr ""
"link zal worden gevolgd als deze overeenkomt met ten minste een reguliere "
"expressie. Standaard zullen alle links worden gevolgd."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:401
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:402
msgid ""
"Any link that matches this regular expression will be ignored. This option "
"can be specified multiple times, in which case as long as any regexp matches "
@@ -3233,11 +3255,11 @@ msgstr ""
"geen enkele link overgeslagen. indien zowel --filter-regexp en --match-"
"regexp worden gebruikt, dan zal --filter-regexp allereerst worden toegepast."
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:403
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
msgid "Do not download CSS stylesheets."
msgstr "Download geen CSS stylesheets"
-#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:404
+#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:405
msgid "Show detailed output information. Useful for debugging"
msgstr ""
"Laat gedetailleerde output informatie zien. Handig bij het opsporen van "
diff --git a/src/calibre/translations/ru.po b/src/calibre/translations/ru.po
index c8706a8e67..348bb5492d 100644
--- a/src/calibre/translations/ru.po
+++ b/src/calibre/translations/ru.po
@@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre 0.4.55\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-06-09 20:36+0000\n"
+"POT-Creation-Date: 2008-06-12 20:18+0000\n"
"PO-Revision-Date: 2008-05-24 06:25+0000\n"
"Last-Translator: Kovid Goyal There was an error reading from file: Metadata will be "
"updated in the database as well as the generated LRF file."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr ""
@@ -1399,26 +1399,26 @@ msgstr ""
msgid "Comma separated list of tags to remove from the books. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:61
msgid "No match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "Authors:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
msgid "Regular expression group name (?P For help visit %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2107,42 +2118,42 @@ msgid ""
" "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Cannot upload books to device there is no more free space available "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2273,6 +2284,17 @@ msgid ""
"href=\"%s\">%s There was an error reading from file: Metadata will be "
"updated in the database as well as the generated LRF file."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:286
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:290
msgid ""
"Adjust the look of the generated LRF file by specifying things like font "
"sizes and the spacing between words."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:287
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:291
msgid ""
"Specify the page settings like margins and the screen size of the target "
"device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:288
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:292
msgid "Fine tune the detection of chapter and section headings."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:296
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:300
msgid "No help available"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:400
msgid "Bulk convert ebooks to LRF"
msgstr ""
@@ -1399,26 +1399,26 @@ msgstr ""
msgid "Comma separated list of tags to remove from the books. "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:236
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:235
msgid ""
" Enter your username and password for LibraryThing.com. Set a regular expression pattern to use when trying to guess ebook "
"metadata from filenames. A )"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:107
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:110
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:113
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:45
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:49
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:54
#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:59
+#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:61
msgid "No match"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "Authors:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:106
msgid "Regular expression group name (?P For help visit %s.kovidgoyal.net The database of books on the reader is corrupted. Try the "
@@ -2107,42 +2118,42 @@ msgid ""
" "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
" Books with the same title as the following already exist in the database. "
"Add them anyway? Cannot upload books to device there is no more free space available "
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:534
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:536
msgid "Deleting books from device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
msgid "Cannot edit metadata"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:568
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:570
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:587
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:675
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:736
@@ -2273,6 +2284,17 @@ msgid ""
"href=\"%s\">%s
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
If you "
"do not have one, you can register "
"for free!.
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr ""
@@ -1493,13 +1493,13 @@ msgid "Tag"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr ""
@@ -1508,7 +1508,7 @@ msgid "Any"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr ""
@@ -1768,7 +1768,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr ""
@@ -2007,91 +2014,95 @@ msgstr ""
msgid "Configure"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " no és una imatge vàlida"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1201,22 +1201,22 @@ msgstr ""
"Preprocessa l'arxiu abans de convertir a LRF. Aixó ès útil si coneixes "
"l'origen de l'arxiu. Fonts conegudes:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
\n"
" "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
"
If you "
"do not have one, you can register "
"for free!.
"
msgstr "No puc aconseguir la coberta.
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "No puc aconseguir la coberta"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "No puc aconseguir la coberta"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "Cal especificar un ISBN correcte per al llibre."
@@ -1669,13 +1669,13 @@ msgid "Tag"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Sèries"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Format"
@@ -1684,7 +1684,7 @@ msgid "Any"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr ""
@@ -1944,7 +1944,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Grandària (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Data"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Valoració"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Camí"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Marca de temps"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr ""
@@ -2183,91 +2190,95 @@ msgstr "Obre l'eBook"
msgid "Configure"
msgstr "Configura"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Error en la comunicació amb el dispositiu"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "Sense espai al dispositiu"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " ist kein gültiges Bild"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1260,11 +1260,11 @@ msgstr ""
"Datei vorbearbeiten bevor sie zu LRF konvertiert wird. Das ist hilfreich, "
"wenn Sie wissen, dass die Datei von einer der folgenden Bezugsquellen stammt:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
-Funktionalität unten zur Überprüfung der regulären "
"Ausdrücke bei einigen Beispiel-Dateinamen."
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
msgid "Regular &expression"
msgstr "R&egulärer Ausdruck"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
msgid "&Test"
msgstr "&Test"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
msgid "File &name:"
msgstr "Datei&name:"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:101
msgid "Test"
msgstr "Test"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:102
msgid "Title:"
msgstr "Titel:"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
msgid "Regular expression group name (?P
If you "
"do not have one, you can register "
@@ -1658,19 +1658,19 @@ msgstr ""
"LibraryThing.com an.
Insofern Sie dies nicht besitzen, können "
"Sie sich kostenlos anmelden!
"
msgstr "Konnte kein Umschlagbild abrufen.
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "Konnte kein Umschlagbild abrufen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "Kann kein Umschlagbild abrufen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "Sie müssen die ISBN für dieses Buch angeben."
@@ -1746,13 +1746,13 @@ msgid "Tag"
msgstr "Etikett"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Serie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Format"
@@ -1761,7 +1761,7 @@ msgid "Any"
msgstr "Irgendein"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Art"
@@ -2046,7 +2046,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr "Source Code (Python) des Rezepts"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr "Doppelklick ermöglicht Bearbeitung
"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Größe (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Datum"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Bewertung"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Pfad"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Zeitstempel"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr "Suche (Zur erweiterten Suche die Schaltfläche links klicken)"
@@ -2293,11 +2300,11 @@ msgstr "eBook öffnen"
msgid "Configure"
msgstr "Konfigurieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Fehler bei der Kommunikation mit dem Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
@@ -2305,31 +2312,31 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s
%%(device)s"
@@ -2423,37 +2434,37 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr "Duplikate gefunden!"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr "Lade Bücher auf das Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "Gerätespeicher voll"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " no es una imagen válida"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1301,22 +1302,22 @@ msgstr ""
"Preprocesar el archivo antes de convertir a LRF, útil si se conoce el origen "
"del archivo. Tipos de archivos conocidos:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
\n"
" "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
"
If you "
"do not have one, you can register "
@@ -1694,19 +1695,19 @@ msgstr ""
"LibraryThing.com.
Si no dispone de una cuenta, puede regisrarse de manera gratuita.
"
msgstr "No se puede descargar la portada.
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "No se puede descargar la portada."
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "No se puede descargar la portada"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "Especifique primero un ISBN válido para el libro."
@@ -1784,13 +1785,13 @@ msgid "Tag"
msgstr "Etiqueta"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Series"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Formato"
@@ -1799,7 +1800,7 @@ msgid "Any"
msgstr "Cualquiera"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Formulario"
@@ -2085,7 +2086,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr "Código fuente de la receta (python)"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr "Doble click para editarme"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Tamaño (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Fecha"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Valoración"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Ruta"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Marca de tiempo"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr ""
"Búsqueda (Para Busqueda Avanzada, haga click en el boton de la izquierda)"
@@ -2333,11 +2341,11 @@ msgstr "Abrir eBook"
msgid "Configure"
msgstr "Configurar"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Error en la comunicación con el dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
@@ -2345,31 +2353,31 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s
%%(device)s"
@@ -2462,36 +2474,36 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr "¡Duplicados encontrados!"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr "Enviando libros al dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "No hay espacio en el dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " n'est pas une image vailde"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1250,23 +1250,23 @@ msgstr ""
"Pré-processe le fichier avant la conversion vers le format LRF. Ceci est "
"utile si vous connaissez l'origine du fichiers. Origines connues :"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " is geen geldige afbeelding"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1227,11 +1227,11 @@ msgstr ""
"je weet dat het bestand van een specifieke bron afkomstig is. Bekende "
"bronnen:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
If you "
"do not have one, you can register "
@@ -1635,19 +1635,19 @@ msgstr ""
"LibraryThing.com.
Si vous n'en avez pas, vous pouvez y créer un compte gratuitement !
"
msgstr "Erreur à la récupération de l'image de couverture.
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "Erreur à la récupération de l'image de couverture"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "Erreur à la récupération de l'image de couverture"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "Vous devez fournir l'identifiant ISBN de ce livre."
@@ -1724,13 +1724,13 @@ msgid "Tag"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Séries"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Format"
@@ -1739,7 +1739,7 @@ msgid "Any"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr ""
@@ -2002,7 +2002,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Taille (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Date"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Note"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Chemin"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Horodatage"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr ""
@@ -2243,91 +2250,95 @@ msgstr "Ouvrir le livre"
msgid "Configure"
msgstr "Configuration"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Erreur pendant la communication avec le lecteur électronique"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s"
@@ -2352,37 +2363,37 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr "Des doublons ont été détectés !"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "Le lecteur électronique n'a plus d'espace mémoire disponible"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " non è un'immagine valida"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1255,22 +1255,22 @@ msgstr ""
"Preprocessa il file prima di convertirlo in LRF. È utile se si conosce la "
"fonte da cui proviene il file. Fonti conosciute:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
\n"
" "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
"
\n"
" "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
"
If you "
"do not have one, you can register "
@@ -1653,19 +1653,19 @@ msgstr ""
"
Se non se ne possiede uno, è possibile registrarsi gratuitamente!
"
msgstr "Impossibile scaricare la copertina
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "Impossibile scaricare la copertina"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "Impossibile scaricare la copertina"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "È necessario specificare il codice ISBN di questo libro"
@@ -1741,13 +1741,13 @@ msgid "Tag"
msgstr "Tag"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Serie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Formato"
@@ -1756,7 +1756,7 @@ msgid "Any"
msgstr "Qualunque"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Formato"
@@ -2035,7 +2035,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr "Codice sorgente formula (python)"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr "Doppio clic per modificarmi"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Dimensione (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Data"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Giudizio"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Percorso"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Timestamp"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr "Cerca (Per la ricerca avanzata fare clic sul bottone a sinistra)"
@@ -2282,11 +2289,11 @@ msgstr "Apri libro"
msgid "Configure"
msgstr "Configurazione"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Errore di comunicazione col dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
@@ -2294,31 +2301,31 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s
%%(device)s"
@@ -2410,37 +2421,37 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr "Scoperti duplicati!"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr "Caricamento libri nel dispositivo."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "Spazio insufficiente sul dispositivo"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr " ist kein gültiges Bild"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
@@ -1260,11 +1260,11 @@ msgstr ""
"Datei vorbearbeiten bevor sie zu LRF konvertiert wird. Das ist hilfreich, "
"wenn Sie wissen, dass die Datei von einer der folgenden Bezugsquellen stammt:"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
-Funktionalität unten zur Überprüfung der regulären "
"Ausdrücke bei einigen Beispiel-Dateinamen."
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:91
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:98
msgid "Regular &expression"
msgstr "R&egulärer Ausdruck"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:92
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:99
msgid "&Test"
msgstr "&Test"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:100
msgid "File &name:"
msgstr "Datei&name:"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:101
msgid "Test"
msgstr "Test"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:95
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:102
msgid "Title:"
msgstr "Titel:"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:103
msgid "Regular expression group name (?P
If you "
"do not have one, you can register "
@@ -1658,19 +1658,19 @@ msgstr ""
"LibraryThing.com an.
Insofern Sie dies nicht besitzen, können "
"Sie sich kostenlos anmelden!
"
msgstr "Konnte kein Umschlagbild abrufen.
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "Konnte kein Umschlagbild abrufen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "Kann kein Umschlagbild abrufen"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "Sie müssen die ISBN für dieses Buch angeben."
@@ -1746,13 +1746,13 @@ msgid "Tag"
msgstr "Etikett"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Serie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Format"
@@ -1761,7 +1761,7 @@ msgid "Any"
msgstr "Irgendein"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Art"
@@ -2046,7 +2046,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr "Source Code (Python) des Rezepts"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr "Doppelklick ermöglicht Bearbeitung
"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Größe (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Datum"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Bewertung"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Pfad"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Zeitstempel"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr "Suche (Zur erweiterten Suche die Schaltfläche links klicken)"
@@ -2293,11 +2300,11 @@ msgstr "eBook öffnen"
msgid "Configure"
msgstr "Konfigurieren"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Fehler bei der Kommunikation mit dem Gerät"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
@@ -2305,31 +2312,31 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s
%%(device)s"
@@ -2423,37 +2434,37 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr "Duplikate gefunden"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr "Lade Bücher auf das Gerät."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "Gerätespeicher voll"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr "
\n"
" "
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:391
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:465
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:393
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:467
msgid ""
"
If you "
"do not have one, you can register "
@@ -1624,19 +1624,19 @@ msgstr ""
"
Als u deze niet heeft, dan kunt u er gratis een krijgen door te registreren"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover.
"
msgstr "Omslag kon niet worden gedownload
"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr "Omslag kon niet worden gedownload"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr "Kan omslag niet downloaden"
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr "Het ISBN nummer voor dit boek moet worden opgegeven."
@@ -1713,13 +1713,13 @@ msgid "Tag"
msgstr "Tag"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr "Serie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr "Formaat"
@@ -1728,7 +1728,7 @@ msgid "Any"
msgstr "Alle"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Formulier"
@@ -2011,7 +2011,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr "Recept bron code (python)"
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr "Dubbel-klik om me te wijzigen
"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr "Grootte (MB)"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr "Datum"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr "Waardering"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr "Pad"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr "Tijdsaanduiding"
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr "Zoeken (Voor geavanceerd zoeken klik op de knop links)"
@@ -2258,11 +2265,11 @@ msgstr "Open eboek"
msgid "Configure"
msgstr "Configureer"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr "Fout bij communicatie met lezer"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
@@ -2270,32 +2277,32 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s
%%(device)s"
@@ -2387,37 +2398,37 @@ msgstr ""
"
"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr "Duplicaten gevonden!"
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr "Boeken worden geupload naar de lezer."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr "Geen schijfruimte op de lezer."
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
If you "
"do not have one, you can register "
"for free!.
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr ""
@@ -1493,13 +1493,13 @@ msgid "Tag"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr ""
@@ -1508,7 +1508,7 @@ msgid "Any"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr ""
@@ -1768,7 +1768,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr ""
@@ -2007,91 +2014,95 @@ msgstr ""
msgid "Configure"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:183
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:187
msgid " is not a valid picture"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:249
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:253
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
"that the file is from a specific source. Known sources:"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:250
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:254
msgid "
If you "
"do not have one, you can register "
"for free!.
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:266
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:265
msgid "Could not fetch cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "Cannot fetch cover"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:272
+#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:271
msgid "You must specify the ISBN identifier for this book."
msgstr ""
@@ -1493,13 +1493,13 @@ msgid "Tag"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:18
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:243
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:387
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:244
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:403
msgid "Series"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search.py:19
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:665
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:681
msgid "Format"
msgstr ""
@@ -1508,7 +1508,7 @@ msgid "Any"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:89
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr ""
@@ -1768,7 +1768,7 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:90
+#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:382
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:733
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:398
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:749
msgid "Size (MB)"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:383
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:734
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:399
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:750
msgid "Date"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:384
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:400
msgid "Rating"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:666
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:682
msgid "Path"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:670
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:686
msgid "Timestamp"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/library.py:770
+#: /home/kovid/work/calibre/src/calibre/gui2/library.py:786
msgid "Search (For Advanced Search click the button to the left)"
msgstr ""
@@ -2007,91 +2014,95 @@ msgstr ""
msgid "Configure"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:80
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:82
msgid "Error communicating with device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:93
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:95
msgid ""
"
"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:94
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:96
msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:394
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:468
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:396
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:470
msgid "Duplicates found!"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:429
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:442
msgid "Uploading books to device."
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:498
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:500
msgid "No space on device"
msgstr ""
-#: /home/kovid/work/calibre/src/calibre/gui2/main.py:499
+#: /home/kovid/work/calibre/src/calibre/gui2/main.py:501
msgid ""
"