Sync to trunk

This commit is contained in:
John Schember 2009-05-31 16:15:58 -04:00
commit b9480a0170
103 changed files with 10361 additions and 6468 deletions

View File

@ -352,7 +352,7 @@ License: other
Liberation Fonts
-----------------
calibre includes a copy of the liberation fonts, available from
https://fedorahosted.org/liberation-fonts
https://calibre.kovidgoyal.net/downloads/liberation-fonts
BSD License (for all the BSD licensed code indicated above)
-----------------------------------------------------------

View File

@ -72,6 +72,9 @@ if __name__ == '__main__':
library_dirs=[os.environ.get('PODOFO_LIB_DIR', podofo_lib)],
include_dirs=\
[os.environ.get('PODOFO_INC_DIR', podofo_inc)]))
else:
print 'WARNING: PoDoFo not found on your system. Various PDF related',
print 'functionality will not work.'
ext_modules = optional + [

View File

@ -45,6 +45,13 @@ def to_unicode(raw, encoding='utf-8', errors='strict'):
return raw
return raw.decode(encoding, errors)
def patheq(p1, p2):
p = os.path
d = lambda x : p.normcase(p.normpath(p.realpath(p.normpath(x))))
if not p1 or not p2:
return False
return d(p1) == d(p2)
def unicode_path(path, abs=False):
if not isinstance(path, unicode):
path = path.decode(sys.getfilesystemencoding())

View File

@ -2,8 +2,14 @@ __license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net'
__docformat__ = 'restructuredtext en'
__appname__ = 'calibre'
__version__ = '0.5.13'
__version__ = '0.6.0b1'
__author__ = "Kovid Goyal <kovid@kovidgoyal.net>"
import re
_ver = __version__.split('.')
_ver = [int(re.search(r'(\d+)', x).group(1)) for x in _ver]
numeric_version = tuple(_ver)
'''
Various run time constants.
'''

View File

@ -5,7 +5,7 @@ __copyright__ = '2008, Kovid Goyal <kovid at kovidgoyal.net>'
import sys
from calibre.ptempfile import PersistentTemporaryFile
from calibre.constants import __version__, __author__
from calibre.constants import numeric_version
class Plugin(object):
'''
@ -176,7 +176,7 @@ class MetadataReaderPlugin(Plugin):
file_types = set([])
supported_platforms = ['windows', 'osx', 'linux']
version = tuple(map(int, (__version__.split('.'))[:3]))
version = numeric_version
author = 'Kovid Goyal'
type = _('Metadata reader')
@ -203,7 +203,7 @@ class MetadataWriterPlugin(Plugin):
file_types = set([])
supported_platforms = ['windows', 'osx', 'linux']
version = tuple(map(int, (__version__.split('.'))[:3]))
version = numeric_version
author = 'Kovid Goyal'
type = _('Metadata writer')

View File

@ -5,7 +5,7 @@ import textwrap
import os
import glob
from calibre.customize import FileTypePlugin, MetadataReaderPlugin, MetadataWriterPlugin
from calibre.constants import __version__
from calibre.constants import numeric_version
class HTML2ZIP(FileTypePlugin):
name = 'HTML to ZIP'
@ -15,7 +15,7 @@ Follow all local links in an HTML file and create a ZIP \
file containing all linked files. This plugin is run \
every time you add an HTML file to the library.\
'''))
version = tuple(map(int, (__version__.split('.'))[:3]))
version = numeric_version
file_types = set(['html', 'htm', 'xhtml', 'xhtm'])
supported_platforms = ['windows', 'osx', 'linux']
on_import = True

View File

@ -9,13 +9,12 @@ from calibre.customize import Plugin, FileTypePlugin, MetadataReaderPlugin, \
from calibre.customize.conversion import InputFormatPlugin, OutputFormatPlugin
from calibre.customize.profiles import InputProfile, OutputProfile
from calibre.customize.builtins import plugins as builtin_plugins
from calibre.constants import __version__, iswindows, isosx
from calibre.constants import numeric_version as version, iswindows, isosx
from calibre.devices.interface import DevicePlugin
from calibre.ebooks.metadata import MetaInformation
from calibre.utils.config import make_config_dir, Config, ConfigProxy, \
plugin_dir, OptionParser
version = tuple([int(x) for x in __version__.split('.')])
platform = 'linux'
if iswindows:

View File

@ -14,8 +14,6 @@
#include <Python.h>
#include <stdio.h>
#define DELTA sizeof(Byte)*4096
#define BUFFER 6000
#define MIN(x, y) ( ((x) < (y)) ? (x) : (y) )
@ -46,26 +44,25 @@ typedef struct {
static PyObject *
cpalmdoc_decompress(PyObject *self, PyObject *args) {
const char *_input = NULL; Py_ssize_t input_len = 0;
Byte *input; char *output; Byte c; PyObject *ans;
Py_ssize_t i = 0, o = 0, j = 0, di, n;
if (!PyArg_ParseTuple(args, "t#", &_input, &input_len))
return NULL;
Byte *input = (Byte *)PyMem_Malloc(sizeof(Byte)*input_len);
input = (Byte *) PyMem_Malloc(sizeof(Byte)*input_len);
if (input == NULL) return PyErr_NoMemory();
// Map chars to bytes
for (j = 0; j < input_len; j++)
input[j] = (_input[j] < 0) ? _input[j]+256 : _input[j];
char *output = (char *)PyMem_Malloc(sizeof(char)*BUFFER);
Byte c;
PyObject *ans;
output = (char *)PyMem_Malloc(sizeof(char)*BUFFER);
if (output == NULL) return PyErr_NoMemory();
while (i < input_len) {
c = input[i++];
if (c >= 1 && c <= 8) // copy 'c' bytes
while (c--) output[o++] = input[i++];
while (c--) output[o++] = (char)input[i++];
else if (c <= 0x7F) // 0, 09-7F = self
output[o++] = c;
output[o++] = (char)c;
else if (c >= 0xC0) { // space + ASCII char
output[o++] = ' ';
@ -107,8 +104,8 @@ cpalmdoc_do_compress(buffer *b, char *output) {
Byte c, n;
bool found;
char *head;
head = output;
buffer temp;
head = output;
temp.data = (Byte *)PyMem_Malloc(sizeof(Byte)*8); temp.len = 0;
if (temp.data == NULL) return 0;
while (i < b->len) {
@ -151,7 +148,7 @@ cpalmdoc_do_compress(buffer *b, char *output) {
}
i += temp.len - 1;
*(output++) = temp.len;
for (j=0; j < temp.len; j++) *(output++) = temp.data[j];
for (j=0; j < temp.len; j++) *(output++) = (char)temp.data[j];
}
}
return output - head;
@ -160,6 +157,7 @@ cpalmdoc_do_compress(buffer *b, char *output) {
static PyObject *
cpalmdoc_compress(PyObject *self, PyObject *args) {
const char *_input = NULL; Py_ssize_t input_len = 0;
char *output; PyObject *ans;
Py_ssize_t j = 0;
buffer b;
if (!PyArg_ParseTuple(args, "t#", &_input, &input_len))
@ -170,11 +168,11 @@ cpalmdoc_compress(PyObject *self, PyObject *args) {
for (j = 0; j < input_len; j++)
b.data[j] = (_input[j] < 0) ? _input[j]+256 : _input[j];
b.len = input_len;
char *output = (char *)PyMem_Malloc(sizeof(char) * b.len);
output = (char *)PyMem_Malloc(sizeof(char) * b.len);
if (output == NULL) return PyErr_NoMemory();
j = cpalmdoc_do_compress(&b, output);
if ( j == 0) return PyErr_NoMemory();
PyObject *ans = Py_BuildValue("s#", output, j);
ans = Py_BuildValue("s#", output, j);
PyMem_Free(output);
PyMem_Free(b.data);
return ans;

View File

@ -42,6 +42,31 @@ def title_sort(title):
title = title.replace(prep, '') + ', ' + prep
return title.strip()
coding = zip(
[1000,900,500,400,100,90,50,40,10,9,5,4,1],
["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]
)
def roman(num):
if num <= 0 or num >= 4000 or int(num) != num:
return str(num)
result = []
for d, r in coding:
while num >= d:
result.append(r)
num -= d
return ''.join(result)
def fmt_sidx(i, fmt='%.2f', use_roman=False):
if i is None:
i = 1
if int(i) == i:
return roman(i) if use_roman else '%d'%i
return fmt%i
class Resource(object):
'''
@ -187,7 +212,8 @@ class MetaInformation(object):
'publisher', 'series', 'series_index', 'rating',
'isbn', 'tags', 'cover_data', 'application_id', 'guide',
'manifest', 'spine', 'toc', 'cover', 'language',
'book_producer', 'timestamp', 'lccn', 'lcc', 'ddc'):
'book_producer', 'timestamp', 'lccn', 'lcc', 'ddc',
'pubdate'):
if hasattr(mi, attr):
setattr(ans, attr, getattr(mi, attr))
@ -212,7 +238,7 @@ class MetaInformation(object):
for x in ('author_sort', 'title_sort', 'comments', 'category', 'publisher',
'series', 'series_index', 'rating', 'isbn', 'language',
'application_id', 'manifest', 'toc', 'spine', 'guide', 'cover',
'book_producer', 'timestamp', 'lccn', 'lcc', 'ddc'
'book_producer', 'timestamp', 'lccn', 'lcc', 'ddc', 'pubdate'
):
setattr(self, x, getattr(mi, x, None))
@ -231,7 +257,7 @@ class MetaInformation(object):
'publisher', 'series', 'series_index', 'rating',
'isbn', 'application_id', 'manifest', 'spine', 'toc',
'cover', 'language', 'guide', 'book_producer',
'timestamp', 'lccn', 'lcc', 'ddc'):
'timestamp', 'lccn', 'lcc', 'ddc', 'pubdate'):
if hasattr(mi, attr):
val = getattr(mi, attr)
if val is not None:
@ -262,8 +288,8 @@ class MetaInformation(object):
try:
x = float(self.series_index)
except ValueError:
x = 1.0
return '%d'%x if int(x) == x else '%.2f'%x
x = 1
return fmt_sidx(x)
def authors_from_string(self, raw):
self.authors = string_to_authors(raw)
@ -299,6 +325,8 @@ class MetaInformation(object):
fmt('Rating', self.rating)
if self.timestamp is not None:
fmt('Timestamp', self.timestamp.isoformat(' '))
if self.pubdate is not None:
fmt('Published', self.pubdate.isoformat(' '))
if self.lccn:
fmt('LCCN', unicode(self.lccn))
if self.lcc:
@ -327,6 +355,8 @@ class MetaInformation(object):
ans += [(_('Language'), unicode(self.language))]
if self.timestamp is not None:
ans += [(_('Timestamp'), unicode(self.timestamp.isoformat(' ')))]
if self.pubdate is not None:
ans += [(_('Published'), unicode(self.pubdate.isoformat(' ')))]
for i, x in enumerate(ans):
ans[i] = u'<tr><td><b>%s</b></td><td>%s</td></tr>'%x
return u'<table>%s</table>'%u'\n'.join(ans)

View File

@ -5,7 +5,7 @@ __copyright__ = '2008, Anatoly Shipitsin <norguhtar at gmail.com>'
'''Read meta information from fb2 files'''
import sys, os, mimetypes
import mimetypes
from base64 import b64decode
from calibre.ebooks.BeautifulSoup import BeautifulStoneSoup
@ -42,7 +42,7 @@ def get_metadata(stream):
if series:
mi.series = series.get('name', None)
try:
mi.series_index = int(series.get('number', None))
mi.series_index = float(series.get('number', None))
except (TypeError, ValueError):
pass
if cdata:

View File

@ -145,7 +145,7 @@ def metadata_from_filename(name, pat=None):
pass
try:
si = match.group('series_index')
mi.series_index = int(si)
mi.series_index = float(si)
except (IndexError, ValueError, TypeError):
pass
try:

View File

@ -2,8 +2,7 @@ __license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal <kovid at kovidgoyal.net>'
'''Read/Write metadata from Open Packaging Format (.opf) files.'''
import sys, re, os, glob
import cStringIO
import re, os
import uuid
from urllib import unquote, quote
@ -374,7 +373,7 @@ class OPF(MetaInformation):
s = self.metadata.find('series-index')
if s and s.string:
try:
return int(str(s.string).strip())
return float(str(s.string).strip())
except:
return None
return None

View File

@ -9,15 +9,16 @@
<dc:creator opf:role="aut" py:for="i, author in enumerate(mi.authors)" py:attrs="{'opf:file-as':mi.author_sort} if mi.author_sort and i == 0 else {}">${author}</dc:creator>
<dc:contributor opf:role="bkp" py:with="attrs={'opf:file-as':__appname__}" py:attrs="attrs">${'%s (%s)'%(__appname__, __version__)} [http://${__appname__}.kovidgoyal.net]</dc:contributor>
<dc:identifier opf:scheme="${__appname__}" id="${__appname__}_id">${mi.application_id}</dc:identifier>
<dc:date py:if="getattr(mi, 'timestamp', None) is not None">${mi.timestamp.isoformat()}</dc:date>
<dc:date py:if="getattr(mi, 'pubdate', None) is not None">${mi.pubdate.isoformat()}</dc:date>
<dc:language>${mi.language if mi.language else 'UND'}</dc:language>
<dc:type py:if="getattr(mi, 'category', False)">${mi.category}</dc:type>
<dc:description py:if="mi.comments">${mi.comments}</dc:description>
<dc:publisher py:if="mi.publisher">${mi.publisher}</dc:publisher>
<dc:identifier opf:scheme="ISBN" py:if="mi.isbn">${mi.isbn}</dc:identifier>
<meta py:if="mi.series is not None" name="calibre:series" content="${mi.series}"/>
<meta py:if="mi.series_index is not None" name="calibre:series_index" content="${mi.series_index}"/>
<meta py:if="mi.series_index is not None" name="calibre:series_index" content="${mi.format_series_index()}"/>
<meta py:if="mi.rating is not None" name="calibre:rating" content="${mi.rating}"/>
<meta py:if="mi.timestamp is not None" name="calibre:timestamp" content="${mi.timestamp.isoformat()}"/>
<py:for each="tag in mi.tags">
<dc:subject py:if="mi.tags is not None">${tag}</dc:subject>
</py:for>

View File

@ -442,9 +442,10 @@ class OPF(object):
comments = MetadataField('description')
category = MetadataField('category')
series = MetadataField('series', is_dc=False)
series_index = MetadataField('series_index', is_dc=False, formatter=int, none_is=1)
series_index = MetadataField('series_index', is_dc=False, formatter=float, none_is=1)
rating = MetadataField('rating', is_dc=False, formatter=int)
timestamp = MetadataField('date', formatter=parser.parse)
pubdate = MetadataField('date', formatter=parser.parse)
timestamp = MetadataField('timestamp', is_dc=False, formatter=parser.parse)
def __init__(self, stream, basedir=os.getcwdu(), unquote_urls=True):

View File

@ -27,6 +27,20 @@ class MOBIOutput(OutputFormatPlugin):
OptionRecommendation(name='toc_title', recommended_value=None,
help=_('Title for any generated in-line table of contents.')
),
OptionRecommendation(name='mobi_periodical',
recommended_value=False, level=OptionRecommendation.LOW,
help=_('When present, generate a periodical rather than a book.')
),
OptionRecommendation(name='no_mobi_index',
recommended_value=False, level=OptionRecommendation.LOW,
help=_('Disable generation of MOBI index.')
),
OptionRecommendation(name='dont_compress',
recommended_value=False, level=OptionRecommendation.LOW,
help=_('Disable compression of the file contents.')
),
])
recommendations = set([
@ -35,7 +49,8 @@ class MOBIOutput(OutputFormatPlugin):
def convert(self, oeb, output_path, input_plugin, opts, log):
self.log, self.opts, self.oeb = log, opts, oeb
from calibre.ebooks.mobi.writer import PALM_MAX_IMAGE_SIZE, MobiWriter
from calibre.ebooks.mobi.writer import PALM_MAX_IMAGE_SIZE, \
MobiWriter, PALMDOC, UNCOMPRESSED
from calibre.ebooks.mobi.mobiml import MobiMLizer
from calibre.ebooks.oeb.transforms.manglecase import CaseMangler
from calibre.ebooks.oeb.transforms.rasterize import SVGRasterizer
@ -49,7 +64,8 @@ class MOBIOutput(OutputFormatPlugin):
rasterizer(oeb, opts)
mobimlizer = MobiMLizer(ignore_tables=opts.linearize_tables)
mobimlizer(oeb, opts)
writer = MobiWriter(imagemax=imagemax,
writer = MobiWriter(opts, imagemax=imagemax,
compression=UNCOMPRESSED if opts.dont_compress else PALMDOC,
prefer_author_sort=opts.prefer_author_sort)
writer(oeb, output_path)

View File

@ -340,6 +340,13 @@ class MobiReader(object):
'href':'styles.css'})
head.insert(0, link)
link.tail = '\n\t'
title = head.xpath('descendant::title')
if not title:
title = head.makeelement('title', {})
title.text = self.book_header.title
title.tail = '\n\t'
head.insert(0, title)
head.text = '\n\t'
self.upshift_markup(root)
guides = root.xpath('//guide')
@ -460,6 +467,10 @@ class MobiReader(object):
if attrib.has_key('align'):
align = attrib.pop('align').strip()
if align:
align = align.lower()
if align == 'baseline':
styles.append('vertical-align: '+align)
else:
styles.append('text-align: %s' % align)
if tag.tag == 'hr':
if mobi_version == 1:
@ -501,13 +512,13 @@ class MobiReader(object):
except ValueError:
pass
if styles:
cls = None
ncls = None
rule = '; '.join(styles)
for sel, srule in self.tag_css_rules.items():
if srule == rule:
cls = sel
ncls = sel
break
if cls is None:
if ncls is None:
ncls = 'calibre_%d' % i
self.tag_css_rules[ncls] = rule
cls = attrib.get('class', '')

View File

@ -3,7 +3,8 @@ Write content to Mobipocket books.
'''
__license__ = 'GPL v3'
__copyright__ = '2008, Marshall T. Vandegrift <llasram@gmail.cam>'
__copyright__ = '2008, Marshall T. Vandegrift <llasram@gmail.cam> and \
Kovid Goyal <kovid@kovidgoyal.net>'
from collections import defaultdict
from itertools import count
@ -29,8 +30,6 @@ from calibre.ebooks.oeb.base import urlnormalize
from calibre.ebooks.compression.palmdoc import compress_doc
# TODO:
# - Allow override CSS (?)
# - Generate index records
# - Optionally rasterize tables
EXTH_CODES = {
@ -59,6 +58,25 @@ OTHER_MAX_IMAGE_SIZE = 10 * 1024 * 1024
MAX_THUMB_SIZE = 16 * 1024
MAX_THUMB_DIMEN = (180, 240)
TAGX = {
'chapter' :
'\x00\x00\x00\x01\x01\x01\x01\x00\x02\x01\x02\x00\x03\x01\x04\x00\x04\x01\x08\x00\x00\x00\x00\x01',
'subchapter' :
'\x00\x00\x00\x01\x01\x01\x01\x00\x02\x01\x02\x00\x03\x01\x04\x00\x04\x01\x08\x00\x05\x01\x10\x00\x15\x01\x10\x00\x16\x01\x20\x00\x17\x01\x40\x00\x00\x00\x00\x01',
'periodical' :
'\x00\x00\x00\x02\x01\x01\x01\x00\x02\x01\x02\x00\x03\x01\x04\x00\x04\x01\x08\x00\x05\x01\x10\x00\x15\x01\x20\x00\x16\x01\x40\x00\x17\x01\x80\x00\x00\x00\x00\x01\x45\x01\x01\x00\x46\x01\x02\x00\x47\x01\x04\x00\x00\x00\x00\x01'
}
INDXT = {
'chapter' : '\x0f',
'subchapter' : '\x1f',
'article' : '\x3f',
'chapter with subchapters': '\x6f',
'periodical' : '\xdf',
'section' : '\xff',
}
def encode(data):
return data.encode('utf-8')
@ -79,6 +97,14 @@ def decint(value, direction):
bytes[-1] |= 0x80
return ''.join(chr(b) for b in reversed(bytes))
def align_block(raw, multiple=4, pad='\0'):
l = len(raw)
extra = l % multiple
if extra == 0: return raw
return raw + pad*(multiple - extra)
def rescale_image(data, maxsizeb, dimen=None):
image = Image.open(StringIO(data))
format = image.format
@ -204,13 +230,11 @@ class Serializer(object):
def serialize_item(self, item):
buffer = self.buffer
#buffer.write('<mbp:section>')
if not item.linear:
self.breaks.append(buffer.tell() - 1)
self.id_offsets[item.href] = buffer.tell()
for elem in item.data.find(XHTML('body')):
self.serialize_elem(elem, item)
#buffer.write('</mbp:section>')
buffer.write('<mbp:pagebreak/>')
def serialize_elem(self, elem, item, nsrmap=NSRMAP):
@ -290,11 +314,13 @@ class Serializer(object):
class MobiWriter(object):
COLLAPSE_RE = re.compile(r'[ \t\r\n\v]+')
def __init__(self, compression=PALMDOC, imagemax=None,
def __init__(self, opts, compression=PALMDOC, imagemax=None,
prefer_author_sort=False):
self.opts = opts
self._compression = compression or UNCOMPRESSED
self._imagemax = imagemax or OTHER_MAX_IMAGE_SIZE
self._prefer_author_sort = prefer_author_sort
self._primary_index_record = None
@classmethod
def generate(cls, opts):
@ -329,6 +355,8 @@ class MobiWriter(object):
def _generate_content(self):
self._map_image_names()
self._generate_text()
if not self.opts.no_mobi_index:
self._generate_index()
self._generate_images()
def _map_image_names(self):
@ -374,6 +402,8 @@ class MobiWriter(object):
serializer = Serializer(self._oeb, self._images)
breaks = serializer.breaks
text = serializer.text
self._id_offsets = serializer.id_offsets
self._content_length = len(text)
self._text_length = len(text)
text = StringIO(text)
nrecords = 0
@ -410,10 +440,205 @@ class MobiWriter(object):
data, overlap = self._read_text_record(text)
self._text_nrecords = nrecords
def _generate_indxt(self, ctoc):
if self.opts.mobi_periodical:
raise NotImplementedError('Indexing for periodicals not implemented')
toc = self._oeb.toc
indxt, indices, c = StringIO(), StringIO(), 0
indices.write('IDXT')
c = 0
last_index = last_name = None
def add_node(node, offset, length, count):
if self.opts.verbose > 2:
self._oeb.log.debug('Adding TOC node:', node.title, 'href:',
node.href)
pos = 0xc0 + indxt.tell()
indices.write(pack('>H', pos))
name = "%4d"%count
indxt.write(chr(len(name)) + name)
indxt.write(INDXT['chapter'])
indxt.write(decint(offset, DECINT_FORWARD))
indxt.write(decint(length, DECINT_FORWARD))
indxt.write(decint(self._ctoc_map[node], DECINT_FORWARD))
indxt.write(decint(0, DECINT_FORWARD))
entries = list(toc.iter())[1:]
for i, child in enumerate(entries):
if not child.title or not child.title.strip():
continue
h = child.href
if h not in self._id_offsets:
self._oeb.log.warning('Could not find TOC entry:', child.title)
continue
offset = self._id_offsets[h]
length = None
for sibling in entries[i+1:]:
h2 = sibling.href
if h2 in self._id_offsets:
offset2 = self._id_offsets[h2]
if offset2 > offset:
length = offset2 - offset
break
if length is None:
length = self._content_length - offset
add_node(child, offset, length, c)
last_index = c
ctoc_offset = self._ctoc_map[child]
last_name = "%4d"%c
c += 1
return align_block(indxt.getvalue()), c, \
align_block(indices.getvalue()), last_index, last_name
def _generate_index(self):
self._oeb.log('Generating index...')
self._primary_index_record = None
ctoc = self._generate_ctoc()
indxt, indxt_count, indices, last_index, last_name = \
self._generate_indxt(ctoc)
indx1 = StringIO()
indx1.write('INDX'+pack('>I', 0xc0)) # header length
# 0x8 - 0xb : Unknown
indx1.write('\0'*4)
# 0xc - 0xf : Header type
indx1.write(pack('>I', 1))
# 0x10 - 0x13 : Unknown
indx1.write('\0'*4)
# 0x14 - 0x17 : IDXT offset
# 0x18 - 0x1b : IDXT count
indx1.write(pack('>I', 0xc0+len(indxt)))
indx1.write(pack('>I', indxt_count))
# 0x1c - 0x23 : Unknown
indx1.write('\xff'*8)
# 0x24 - 0xbf
indx1.write('\0'*156)
indx1.write(indxt)
indx1.write(indices)
indx1 = indx1.getvalue()
idxt0 = chr(len(last_name)) + last_name + pack('>H', last_index)
idxt0 = align_block(idxt0)
indx0 = StringIO()
tagx = TAGX['periodical' if self.opts.mobi_periodical else 'chapter']
tagx = align_block('TAGX' + pack('>I', 8 + len(tagx)) + tagx)
indx0_indices_pos = 0xc0 + len(tagx) + len(idxt0)
indx0_indices = align_block('IDXT' + pack('>H', 0xc0 + len(tagx)))
# Generate record header
header = StringIO()
header.write('INDX')
header.write(pack('>I', 0xc0)) # header length
# 0x08 - 0x0b : Unknown
header.write('\0'*4)
# 0x0c - 0x0f : Header type
header.write(pack('>I', 0))
# 0x10 - 0x13 : Generator ID
header.write(pack('>I', 6))
# 0x14 - 0x17 : IDXT offset
header.write(pack('>I', indx0_indices_pos))
# 0x18 - 0x1b : IDXT count
header.write(pack('>I', 1))
# 0x1c - 0x1f : Text encoding ?
header.write(pack('>I', 650001))
# 0x20 - 0x23 : Language code?
header.write(iana2mobi(str(self._oeb.metadata.language[0])))
# 0x24 - 0x27 : Number of TOC entries in INDX1
header.write(pack('>I', indxt_count))
# 0x28 - 0x2b : ORDT Offset
header.write('\0'*4)
# 0x2c - 0x2f : LIGT offset
header.write('\0'*4)
# 0x30 - 0x33 : Number of LIGT entries
header.write('\0'*4)
# 0x34 - 0x37 : Unknown
header.write(pack('>I', 1))
# 0x38 - 0xb3 : Unknown (pad?)
header.write('\0'*124)
# 0xb4 - 0xb7 : TAGX offset
header.write(pack('>I', 0xc0))
# 0xb8 - 0xbf : Unknown
header.write('\0'*8)
header = header.getvalue()
indx0.write(header)
indx0.write(tagx)
indx0.write(idxt0)
indx0.write(indx0_indices)
indx0 = indx0.getvalue()
self._primary_index_record = len(self._records)
if self.opts.verbose > 3:
from tempfile import mkdtemp
import os
t = mkdtemp()
open(os.path.join(t, 'indx0.bin'), 'wb').write(indx0)
open(os.path.join(t, 'indx1.bin'), 'wb').write(indx1)
open(os.path.join(t, 'ctoc.bin'), 'wb').write(ctoc)
self._oeb.log.debug('Index records dumped to', t)
self._records.extend([indx0, indx1, ctoc])
def _generate_ctoc(self):
if self.opts.mobi_periodical:
raise NotImplementedError('Indexing for periodicals not implemented')
toc = self._oeb.toc
self._ctoc_map = {}
self._ctoc_name_map = {}
self._last_toc_entry = None
ctoc = StringIO()
def add_node(node, cls):
t = node.title
if t and t.strip():
t = t.strip()
if not isinstance(t, unicode):
t = t.decode('utf-8', 'replace')
t = t.encode('utf-8')
self._last_toc_entry = t
self._ctoc_map[node] = ctoc.tell()
self._ctoc_name_map[node] = t
ctoc.write(decint(len(t), DECINT_FORWARD)+t)
for child in toc.iter():
add_node(child, 'chapter')
return align_block(ctoc.getvalue())
def _generate_images(self):
self._oeb.logger.info('Serializing images...')
images = [(index, href) for href, index in self._images.items()]
images.sort()
self._first_image_record = None
for _, href in images:
item = self._oeb.manifest.hrefs[href]
try:
@ -422,35 +647,142 @@ class MobiWriter(object):
self._oeb.logger.warn('Bad image file %r' % item.href)
continue
self._records.append(data)
if self._first_image_record is None:
self._first_image_record = len(self._records)-1
def _generate_end_records(self):
self._flis_number = len(self._records)
self._records.append(
'FLIS\0\0\0\x08\0\x41\0\0\0\0\0\0\xff\xff\xff\xff\0\x01\0\x03\0\0\0\x03\0\0\0\x01'+
'\xff'*4)
fcis = 'FCIS\x00\x00\x00\x14\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x00'
fcis += pack('>I', self._text_length)
fcis += '\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x08\x00\x01\x00\x01\x00\x00\x00\x00'
self._fcis_number = len(self._records)
self._records.append(fcis)
self._records.append('\xE9\x8E\x0D\x0A')
def _generate_record0(self):
metadata = self._oeb.metadata
exth = self._build_exth()
last_content_record = len(self._records) - 1
self._generate_end_records()
record0 = StringIO()
# The PalmDOC Header
record0.write(pack('>HHIHHHH', self._compression, 0,
self._text_length, self._text_nrecords, RECORD_SIZE, 0, 0))
self._text_length,
self._text_nrecords, RECORD_SIZE, 0, 0)) # 0 - 15 (0x0 - 0xf)
uid = random.randint(0, 0xffffffff)
title = str(metadata.title[0])
# The MOBI Header
# 0x0 - 0x3
record0.write('MOBI')
record0.write(pack('>IIIII', 0xe8, 2, 65001, uid, 6))
record0.write('\xff' * 40)
record0.write(pack('>I', self._text_nrecords + 1))
record0.write(pack('>II', 0xe8 + 16 + len(exth), len(title)))
record0.write(iana2mobi(str(metadata.language[0])))
# 0x4 - 0x7 : Length of header
# 0x8 - 0x11 : MOBI type
# type meaning
# 0x002 MOBI book (chapter - chapter navigation)
# 0x101 News - Hierarchical navigation with sections and articles
# 0x102 News feed - Flat navigation
# 0x103 News magazine - same as 1x101
# 0xC - 0xF : Text encoding (65001 is utf-8)
# 0x10 - 0x13 : UID
# 0x14 - 0x17 : Generator version
btype = 0x101 if self.opts.mobi_periodical else 2
record0.write(pack('>IIIII',
0xe8, btype, 65001, uid, 6))
# 0x18 - 0x1f : Unknown
record0.write('\xff' * 8)
# 0x20 - 0x23 : Secondary index record
# TODO: implement
record0.write('\xff' * 4)
# 0x24 - 0x3f : Unknown
record0.write('\xff' * 28)
# 0x40 - 0x43 : Offset of first non-text record
record0.write(pack('>I',
self._text_nrecords + 1))
# 0x44 - 0x4b : title offset, title length
record0.write(pack('>II',
0xe8 + 16 + len(exth), len(title)))
# 0x4c - 0x4f : Language specifier
record0.write(iana2mobi(
str(metadata.language[0])))
# 0x50 - 0x57 : Unknown
record0.write('\0' * 8)
record0.write(pack('>II', 6, self._text_nrecords + 1))
# 0x58 - 0x5b : Format version
# 0x5c - 0x5f : First image record number
record0.write(pack('>II',
6, self._first_image_record if self._first_image_record else 0))
# 0x60 - 0x63 : First HUFF/CDIC record number
# 0x64 - 0x67 : Number of HUFF/CDIC records
# 0x68 - 0x6b : First DATP record number
# 0x6c - 0x6f : Number of DATP records
record0.write('\0' * 16)
# 0x70 - 0x73 : EXTH flags
record0.write(pack('>I', 0x50))
# 0x74 - 0x93 : Unknown
record0.write('\0' * 32)
record0.write(pack('>IIII', 0xffffffff, 0xffffffff, 0, 0))
# 0x94 - 0x97 : DRM offset
# 0x98 - 0x9b : DRM count
# 0x9c - 0x9f : DRM size
# 0xa0 - 0xa3 : DRM flags
record0.write(pack('>IIII',
0xffffffff, 0xffffffff, 0, 0))
# 0xa4 - 0xaf : Unknown
record0.write('\0'*12)
# 0xb0 - 0xb1 : First content record number
# 0xb2 - 0xb3 : last content record number
# (Includes Image, DATP, HUFF, DRM)
record0.write(pack('>HH', 1, last_content_record))
# 0xb4 - 0xb7 : Unknown
record0.write('\0\0\0\x01')
# 0xb8 - 0xbb : FCIS record number
record0.write(pack('>I', self._fcis_number))
# 0xbc - 0xbf : Unknown (FCIS record count?)
record0.write(pack('>I', 1))
# 0xc0 - 0xc3 : FLIS record number
record0.write(pack('>I', self._flis_number))
# 0xc4 - 0xc7 : Unknown (FLIS record count?)
record0.write(pack('>I', 1))
# 0xc8 - 0xcf : Unknown
record0.write('\0'*8)
# 0xd0 - 0xdf : Unknown
record0.write(pack('>IIII', 0xffffffff, 0, 0xffffffff, 0xffffffff))
# 0xe0 - 0xe3 : Extra record data
# The '5' is a bitmask of extra record data at the end:
# - 0x1: <extra multibyte bytes><size> (?)
# - 0x4: <uncrossable breaks><size>
# Of course, the formats aren't quite the same.
# TODO: What the hell are the rest of these fields?
record0.write(pack('>IIIIIIIIIIIIIIIII',
0, 0, 0, 0xffffffff, 0, 0xffffffff, 0, 0xffffffff, 0, 0xffffffff,
0, 0xffffffff, 0, 0xffffffff, 0xffffffff, 5, 0xffffffff))
record0.write(pack('>I', 5))
# 0xe4 - 0xe7 : Primary index record
record0.write(pack('>I', 0xffffffff if self._primary_index_record is
None else self._primary_index_record))
record0.write(exth)
record0.write(title)
record0 = record0.getvalue()

View File

@ -101,7 +101,7 @@ class EbookIterator(object):
'''
for item in self.opf.manifest:
if item.mime_type and 'css' in item.mime_type.lower():
css = open(item.path, 'rb').read().decode('utf-8')
css = open(item.path, 'rb').read().decode('utf-8', 'replace')
for match in re.compile(r'@font-face\s*{([^}]+)}').finditer(css):
block = match.group(1)
family = re.compile(r'font-family\s*:\s*([^;]+)').search(block)

View File

@ -65,7 +65,7 @@ class Jacket(object):
comments = comments.replace('\r\n', '\n').replace('\n\n', '<br/><br/>')
series = '<b>Series: </b>' + mi.series if mi.series else ''
if series and mi.series_index is not None:
series += ' [%s]'%mi.series_index
series += ' [%s]'%mi.format_series_index()
tags = mi.tags
if not tags:
try:

View File

@ -58,7 +58,7 @@ class MergeMetadata(object):
m.add('creator', mi.book_producer, role='bkp')
if mi.series_index is not None:
m.clear('series_index')
m.add('series_index', '%.2f'%mi.series_index)
m.add('series_index', mi.format_series_index())
if mi.rating is not None:
m.clear('rating')
m.add('rating', '%.2f'%mi.rating)

View File

@ -172,4 +172,3 @@ class DetectStructure(object):
level2.add(text, _href,
play_order=self.oeb.toc.next_play_order())

View File

@ -20,8 +20,8 @@ class PDBOutput(OutputFormatPlugin):
OptionRecommendation(name='format', recommended_value='doc',
level=OptionRecommendation.LOW,
short_switch='f', choices=FORMAT_WRITERS.keys(),
help=_('Format to use inside the pdb container. Choices are: '
'%s' % FORMAT_WRITERS.keys())),
help=(_('Format to use inside the pdb container. Choices are:')+\
' %s' % FORMAT_WRITERS.keys())),
])
def convert(self, oeb_book, output_path, input_plugin, opts, log):

View File

@ -14,7 +14,6 @@ import string, sys
from calibre.utils.config import OptionParser
from calibre.utils.logging import Log
from calibre.constants import preferred_encoding
from calibre.customize.conversion import OptionRecommendation
from calibre.ebooks.pdf.manipulate import crop, decrypt, encrypt, \
info, merge, reverse, rotate, split
@ -37,7 +36,7 @@ command can be one of the following:
Use %prog command --help to get more information about a specific command
Manipulate a PDF.
'''.replace('%%commands', string.join(sorted(COMMANDS.keys()), ', ')))
''').replace('%%commands', string.join(sorted(COMMANDS.keys()), ', '))
def print_help(parser, log):
help = parser.format_help().encode(preferred_encoding, 'replace')

View File

@ -10,7 +10,7 @@ __docformat__ = 'restructuredtext en'
Crop a pdf file
'''
import os, sys, re
import sys, re
from optparse import OptionGroup, Option
from calibre.ebooks.metadata.meta import metadata_from_formats
@ -37,16 +37,16 @@ OPTIONS = set([
help=_('Path to output file. By default a file is created in the current directory.')),
OptionRecommendation(name='bottom_left_x', recommended_value=DEFAULT_CROP,
level=OptionRecommendation.LOW, long_switch='leftx', short_switch='x',
help=_('Number of pixels to crop from the left most x (default is %s) ' % DEFAULT_CROP)),
help=_('Number of pixels to crop from the left most x (default is %s)') % DEFAULT_CROP),
OptionRecommendation(name='bottom_left_y', recommended_value=DEFAULT_CROP,
level=OptionRecommendation.LOW, long_switch='lefty', short_switch='y',
help=_('Number of pixels to crop from the left most y (default is %s) ' % DEFAULT_CROP)),
help=_('Number of pixels to crop from the left most y (default is %s)') % DEFAULT_CROP),
OptionRecommendation(name='top_right_x', recommended_value=DEFAULT_CROP,
level=OptionRecommendation.LOW, long_switch='rightx', short_switch='v',
help=_('Number of pixels to crop from the right most x (default is %s) ' % DEFAULT_CROP)),
help=_('Number of pixels to crop from the right most x (default is %s)') % DEFAULT_CROP),
OptionRecommendation(name='top_right_y', recommended_value=DEFAULT_CROP,
level=OptionRecommendation.LOW, long_switch='right y', short_switch='w',
help=_('Number of pixels to crop from the right most y (default is %s)' % DEFAULT_CROP)),
help=_('Number of pixels to crop from the right most y (default is %s)') % DEFAULT_CROP),
OptionRecommendation(name='bounding', recommended_value=None,
level=OptionRecommendation.LOW, long_switch='bounding', short_switch='b',
help=_('A file generated by ghostscript which allows each page to be individually cropped `gs -dSAFER -dNOPAUSE -dBATCH -sDEVICE=bbox file.pdf 2> bounding`')),

View File

@ -9,16 +9,14 @@ __docformat__ = 'restructuredtext en'
Merge PDF files into a single PDF document.
'''
import os, re, sys, time
from optparse import OptionGroup, Option
import os, sys
from calibre.utils.config import OptionParser
from calibre.utils.logging import Log
from calibre.constants import preferred_encoding
from calibre.customize.conversion import OptionRecommendation
from calibre.ebooks.pdf.verify import is_valid_pdfs, is_encrypted, is_encrypted
from pyPdf import PdfFileWriter, PdfFileReader
from calibre.ebooks.pdf.verify import is_valid_pdfs, is_encrypted
from calibre import prints
from calibre.utils.podofo import podofo, podofo_err
USAGE = '\n%prog %%name ' + _('''\
file.pdf ...
@ -35,27 +33,23 @@ def option_parser(name):
return OptionParser(usage=usage)
def print_info(pdf_path):
with open(os.path.abspath(pdf_path), 'rb') as pdf_file:
pdf = PdfFileReader(pdf_file)
print _('Title: %s' % pdf.documentInfo.title)
print _('Author: %s' % pdf.documentInfo.author)
print _('Subject: %s' % pdf.documentInfo.subject)
print _('Creator: %s' % pdf.documentInfo.creator)
print _('Producer: %s' % pdf.documentInfo.producer)
#print _('Creation Date: %s' % time.strftime('%a %b %d %H:%M:%S %Y', time.gmtime(os.path.getctime(pdf_path))))
#print _('Modification Date: %s' % time.strftime('%a %b %d %H:%M:%S %Y', time.gmtime(os.path.getmtime(pdf_path))))
print _('Pages: %s' % pdf.numPages)
#print _('Encrypted: %s' % pdf.isEncrypted)
try:
print _('File Size: %s bytes' % os.path.getsize(pdf_path))
except: pass
try:
pdf_file.seek(0)
vline = pdf_file.readline()
mo = re.search('(?iu)^%...-(?P<version>\d+\.\d+)', vline)
if mo != None:
print _('PDF Version: %s' % mo.group('version'))
except: pass
if not podofo:
raise RuntimeError('Failed to load PoDoFo with error:'+podofo_err)
p = podofo.PDFDoc()
p.open(pdf_path)
fmt = lambda x, y: '%-20s: %s'%(x, y)
print
prints(fmt(_('Title'), p.title))
prints(fmt(_('Author'), p.author))
prints(fmt(_('Subject'), p.subject))
prints(fmt(_('Creator'), p.creator))
prints(fmt(_('Producer'), p.producer))
prints(fmt(_('Pages'), p.pages))
prints(fmt(_('File Size'), os.stat(pdf_path).st_size))
prints(fmt(_('PDF Version'), p.version if p.version else _('Unknown')))
def main(args=sys.argv, name=''):
log = Log()

View File

@ -32,12 +32,12 @@ class PDFOutput(OutputFormatPlugin):
level=OptionRecommendation.LOW, short_switch='u', choices=UNITS.keys(),
help=_('The unit of measure. Default is inch. Choices '
'are %s '
'Note: This does not override the unit for margins!' % UNITS.keys())),
'Note: This does not override the unit for margins!') % UNITS.keys()),
OptionRecommendation(name='paper_size', recommended_value='letter',
level=OptionRecommendation.LOW, choices=PAPER_SIZES.keys(),
help=_('The size of the paper. This size will be overridden when an '
'output profile is used. Default is letter. Choices '
'are %s' % PAPER_SIZES.keys())),
'are %s') % PAPER_SIZES.keys()),
OptionRecommendation(name='custom_size', recommended_value=None,
help=_('Custom size of the document. Use the form widthxheight '
'EG. `123x321` to specify the width and height. '
@ -45,7 +45,7 @@ class PDFOutput(OutputFormatPlugin):
OptionRecommendation(name='orientation', recommended_value='portrait',
level=OptionRecommendation.LOW, choices=ORIENTATIONS.keys(),
help=_('The orientation of the page. Default is portrait. Choices '
'are %s' % ORIENTATIONS.keys())),
'are %s') % ORIENTATIONS.keys()),
])
def convert(self, oeb_book, output_path, input_plugin, opts, log):

View File

@ -23,7 +23,7 @@ class TXTOutput(OutputFormatPlugin):
help=_('Type of newline to use. Options are %s. Default is \'system\'. '
'Use \'old_mac\' for compatibility with Mac OS 9 and earlier. '
'For Mac OS X use \'unix\'. \'system\' will default to the newline '
'type used by this OS.' % sorted(TxtNewlines.NEWLINE_TYPES.keys()))),
'type used by this OS.') % sorted(TxtNewlines.NEWLINE_TYPES.keys())),
])
def convert(self, oeb_book, output_path, input_plugin, opts, log):

View File

@ -19,7 +19,8 @@ from calibre.ebooks.metadata import MetaInformation
NONE = QVariant() #: Null value to return from the data function of item models
ALL_COLUMNS = ['title', 'authors', 'size', 'timestamp', 'rating', 'publisher', 'tags', 'series']
ALL_COLUMNS = ['title', 'authors', 'size', 'timestamp', 'rating', 'publisher',
'tags', 'series', 'pubdate']
def _config():
c = Config('gui', 'preferences for the calibre GUI')

View File

@ -119,7 +119,8 @@ class Widget(QWidget):
elif isinstance(g, XPathEdit):
g.edit.setText(val if val else '')
else:
raise Exception('Can\'t set value %s in %s'%(repr(val), type(g)))
raise Exception('Can\'t set value %s in %s'%(repr(val),
unicode(g.objectName())))
self.post_set_value(g, val)
def set_help(self, msg):

View File

@ -83,7 +83,7 @@ class MetadataWidget(Widget, Ui_Form):
comments = unicode(self.comment.toPlainText()).strip()
if comments:
mi.comments = comments
mi.series_index = int(self.series_index.value())
mi.series_index = float(self.series_index.value())
if self.series.currentIndex() > -1:
mi.series = unicode(self.series.currentText()).strip()
tags = [t.strip() for t in unicode(self.tags.text()).strip().split(',')]

View File

@ -1,7 +1,8 @@
<ui version="4.0" >
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Form</class>
<widget class="QWidget" name="Form" >
<property name="geometry" >
<widget class="QWidget" name="Form">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
@ -9,59 +10,89 @@
<height>500</height>
</rect>
</property>
<property name="windowTitle" >
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout" >
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QGroupBox" name="groupBox_4" >
<property name="title" >
<widget class="QGroupBox" name="groupBox_4">
<property name="title">
<string>Book Cover</string>
</property>
<layout class="QGridLayout" name="_2" >
<item row="1" column="0" >
<layout class="QVBoxLayout" name="_4" >
<property name="spacing" >
<layout class="QGridLayout" name="_2">
<item row="0" column="0">
<layout class="QHBoxLayout" name="_3">
<item>
<widget class="ImageView" name="cover">
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap resource="../../../../../../calibre/gui2/images.qrc">:/images/book.svg</pixmap>
</property>
<property name="scaledContents">
<bool>true</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="opt_prefer_metadata_cover">
<property name="text">
<string>Use cover from &amp;source file</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<layout class="QVBoxLayout" name="_4">
<property name="spacing">
<number>6</number>
</property>
<property name="margin" >
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_5" >
<property name="text" >
<widget class="QLabel" name="label_5">
<property name="text">
<string>Change &amp;cover image:</string>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>cover_path</cstring>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="_5" >
<property name="spacing" >
<layout class="QHBoxLayout" name="_5">
<property name="spacing">
<number>6</number>
</property>
<property name="margin" >
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QLineEdit" name="cover_path" >
<property name="readOnly" >
<widget class="QLineEdit" name="cover_path">
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="cover_button" >
<property name="toolTip" >
<widget class="QToolButton" name="cover_button">
<property name="toolTip">
<string>Browse for an image to use as the cover of this book.</string>
</property>
<property name="text" >
<property name="text">
<string>...</string>
</property>
<property name="icon" >
<iconset resource="../../../../../../calibre/gui2/images.qrc" >
<property name="icon">
<iconset resource="../../../../../../calibre/gui2/images.qrc">
<normaloff>:/images/document_open.svg</normaloff>:/images/document_open.svg</iconset>
</property>
</widget>
@ -70,243 +101,204 @@
</item>
</layout>
</item>
<item row="2" column="0" >
<widget class="QCheckBox" name="opt_prefer_metadata_cover" >
<property name="text" >
<string>Use cover from &amp;source file</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="0" >
<layout class="QHBoxLayout" name="_3" >
<item>
<widget class="ImageView" name="cover" >
<property name="text" >
<string/>
</property>
<property name="pixmap" >
<pixmap resource="../../../../../../calibre/gui2/images.qrc" >:/images/book.svg</pixmap>
</property>
<property name="scaledContents" >
<bool>true</bool>
</property>
<property name="alignment" >
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
</layout>
<zorder>opt_prefer_metadata_cover</zorder>
<zorder></zorder>
</widget>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_2" >
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<layout class="QGridLayout" name="_7" >
<item row="0" column="0" >
<widget class="QLabel" name="label" >
<property name="text" >
<layout class="QGridLayout" name="_7">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>&amp;Title: </string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>title</cstring>
</property>
</widget>
</item>
<item row="0" column="1" >
<widget class="QLineEdit" name="title" >
<property name="toolTip" >
<item row="0" column="1">
<widget class="QLineEdit" name="title">
<property name="toolTip">
<string>Change the title of this book</string>
</property>
</widget>
</item>
<item row="1" column="0" >
<widget class="QLabel" name="label_2" >
<property name="text" >
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>&amp;Author(s): </string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>author</cstring>
</property>
</widget>
</item>
<item row="1" column="1" >
<widget class="QLineEdit" name="author" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
<item row="1" column="1">
<widget class="QLineEdit" name="author">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip" >
<property name="toolTip">
<string>Change the author(s) of this book. Multiple authors should be separated by an &amp;. If the author name contains an &amp;, use &amp;&amp; to represent it.</string>
</property>
</widget>
</item>
<item row="2" column="0" >
<widget class="QLabel" name="label_6" >
<property name="text" >
<item row="2" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Author So&amp;rt:</string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>author_sort</cstring>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QLineEdit" name="author_sort" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
<item row="2" column="1">
<widget class="QLineEdit" name="author_sort">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip" >
<property name="toolTip">
<string>Change the author(s) of this book. Multiple authors should be separated by a comma</string>
</property>
</widget>
</item>
<item row="3" column="0" >
<widget class="QLabel" name="label_3" >
<property name="text" >
<item row="3" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>&amp;Publisher: </string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>publisher</cstring>
</property>
</widget>
</item>
<item row="3" column="1" >
<widget class="QLineEdit" name="publisher" >
<property name="toolTip" >
<item row="3" column="1">
<widget class="QLineEdit" name="publisher">
<property name="toolTip">
<string>Change the publisher of this book</string>
</property>
</widget>
</item>
<item row="4" column="0" >
<widget class="QLabel" name="label_4" >
<property name="text" >
<item row="4" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>Ta&amp;gs: </string>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>tags</cstring>
</property>
</widget>
</item>
<item row="4" column="1" >
<widget class="QLineEdit" name="tags" >
<property name="toolTip" >
<string>Tags categorize the book. This is particularly useful while searching. &lt;br>&lt;br>They can be any words or phrases, separated by commas.</string>
<item row="4" column="1">
<widget class="QLineEdit" name="tags">
<property name="toolTip">
<string>Tags categorize the book. This is particularly useful while searching. &lt;br&gt;&lt;br&gt;They can be any words or phrases, separated by commas.</string>
</property>
</widget>
</item>
<item row="5" column="0" >
<widget class="QLabel" name="label_7" >
<property name="text" >
<item row="5" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>&amp;Series:</string>
</property>
<property name="textFormat" >
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="alignment" >
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="buddy" >
<property name="buddy">
<cstring>series</cstring>
</property>
</widget>
</item>
<item row="5" column="1" >
<widget class="QComboBox" name="series" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
<item row="5" column="1">
<widget class="QComboBox" name="series">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>10</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip" >
<property name="toolTip">
<string>List of known series. You can add new series.</string>
</property>
<property name="whatsThis" >
<property name="whatsThis">
<string>List of known series. You can add new series.</string>
</property>
<property name="editable" >
<property name="editable">
<bool>true</bool>
</property>
<property name="insertPolicy" >
<property name="insertPolicy">
<enum>QComboBox::InsertAlphabetically</enum>
</property>
<property name="sizeAdjustPolicy" >
<property name="sizeAdjustPolicy">
<enum>QComboBox::AdjustToContents</enum>
</property>
</widget>
</item>
<item row="6" column="1" >
<widget class="QSpinBox" name="series_index" >
<property name="enabled" >
<bool>true</bool>
</property>
<property name="toolTip" >
<string>Series index.</string>
</property>
<property name="whatsThis" >
<string>Series index.</string>
</property>
<property name="prefix" >
<item row="6" column="1">
<widget class="QDoubleSpinBox" name="series_index">
<property name="prefix">
<string>Book </string>
</property>
<property name="minimum" >
<number>1</number>
<property name="maximum">
<double>9999.989999999999782</double>
</property>
<property name="maximum" >
<number>10000</number>
<property name="value">
<double>1.000000000000000</double>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QGroupBox" name="groupBox_2" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Minimum" hsizetype="Minimum" >
<widget class="QGroupBox" name="groupBox_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>16777215</width>
<height>200</height>
</size>
</property>
<property name="title" >
<property name="title">
<string>Comments</string>
</property>
<layout class="QGridLayout" name="_8" >
<item row="0" column="0" >
<widget class="QTextEdit" name="comment" >
<property name="maximumSize" >
<layout class="QGridLayout" name="_8">
<item row="0" column="0">
<widget class="QTextEdit" name="comment">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>180</height>
@ -329,8 +321,8 @@
</customwidget>
</customwidgets>
<resources>
<include location="../../../../../../calibre/gui2/images.qrc" />
<include location="../images.qrc" />
<include location="../../../../../../calibre/gui2/images.qrc"/>
<include location="../images.qrc"/>
</resources>
<connections/>
</ui>

View File

@ -35,7 +35,7 @@ class PageSetupWidget(Widget, Ui_Form):
TITLE = _('Page Setup')
def __init__(self, parent, get_option, get_help, db=None, book_id=None):
Widget.__init__(self, parent, 'lrf_output',
Widget.__init__(self, parent, 'page_setup',
['margin_top', 'margin_left', 'margin_right', 'margin_bottom',
'input_profile', 'output_profile']
)

View File

@ -1,18 +1,16 @@
__license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal <kovid at kovidgoyal.net>'
import os, re, time, textwrap, sys, cStringIO
from binascii import hexlify, unhexlify
import os, re, time, textwrap
from PyQt4.Qt import QDialog, QMessageBox, QListWidgetItem, QIcon, \
QDesktopServices, QVBoxLayout, QLabel, QPlainTextEdit, \
QStringListModel, QAbstractItemModel, QFont, \
SIGNAL, QTimer, Qt, QSize, QVariant, QUrl, \
QModelIndex, QInputDialog, QAbstractTableModel, \
QDialogButtonBox, QTabWidget
QDialogButtonBox, QTabWidget, QBrush
from calibre.constants import islinux, iswindows
from calibre.gui2.dialogs.config_ui import Ui_Dialog
from calibre.gui2.dialogs.test_email_ui import Ui_Dialog as TE_Dialog
from calibre.gui2 import qstring_to_unicode, choose_dir, error_dialog, config, \
ALL_COLUMNS, NONE, info_dialog, choose_files
from calibre.utils.config import prefs
@ -95,6 +93,9 @@ class PluginModel(QAbstractItemModel):
def __init__(self, *args):
QAbstractItemModel.__init__(self, *args)
self.icon = QVariant(QIcon(':/images/plugins.svg'))
p = QIcon(self.icon).pixmap(32, 32, QIcon.Disabled, QIcon.On)
self.disabled_icon = QVariant(QIcon(p))
self._p = p
self.populate()
def populate(self):
@ -154,9 +155,7 @@ class PluginModel(QAbstractItemModel):
return 0
if index.internalId() == -1:
return Qt.ItemIsEnabled
flags = Qt.ItemIsSelectable
if not is_disabled(self.data(index, Qt.UserRole)):
flags |= Qt.ItemIsEnabled
flags = Qt.ItemIsSelectable | Qt.ItemIsEnabled
return flags
def data(self, index, role):
@ -177,7 +176,9 @@ class PluginModel(QAbstractItemModel):
ans += '\nCustomization: '+c
return QVariant(ans)
if role == Qt.DecorationRole:
return self.icon
return self.disabled_icon if is_disabled(plugin) else self.icon
if role == Qt.ForegroundRole and is_disabled(plugin):
return QVariant(QBrush(Qt.gray))
if role == Qt.UserRole:
return plugin
return NONE
@ -202,34 +203,6 @@ class CategoryModel(QStringListModel):
return self.icons[index.row()]
return QStringListModel.data(self, index, role)
class TestEmail(QDialog, TE_Dialog):
def __init__(self, accounts, parent):
QDialog.__init__(self, parent)
TE_Dialog.__init__(self)
self.setupUi(self)
opts = smtp_prefs().parse()
self.test_func = parent.test_email_settings
self.connect(self.test_button, SIGNAL('clicked(bool)'), self.test)
self.from_.setText(unicode(self.from_.text())%opts.from_)
if accounts:
self.to.setText(list(accounts.keys())[0])
if opts.relay_host:
self.label.setText(_('Using: %s:%s@%s:%s and %s encryption')%
(opts.relay_username, unhexlify(opts.relay_password),
opts.relay_host, opts.relay_port, opts.encryption))
def test(self):
self.log.setPlainText(_('Sending...'))
self.test_button.setEnabled(False)
try:
tb = self.test_func(unicode(self.to.text()))
if not tb:
tb = _('Mail successfully sent')
self.log.setPlainText(tb)
finally:
self.test_button.setEnabled(True)
class EmailAccounts(QAbstractTableModel):
def __init__(self, accounts):
@ -477,32 +450,19 @@ class ConfigDialog(QDialog, Ui_Dialog):
self.stackedWidget.insertWidget(2, self.conversion_options)
def setup_email_page(self):
opts = smtp_prefs().parse()
if opts.from_:
self.email_from.setText(opts.from_)
def x():
if self._email_accounts.account_order:
return self._email_accounts.account_order[0]
self.send_email_widget.initialize(x)
opts = self.send_email_widget.smtp_opts
self._email_accounts = EmailAccounts(opts.accounts)
self.email_view.setModel(self._email_accounts)
if opts.relay_host:
self.relay_host.setText(opts.relay_host)
self.relay_port.setValue(opts.relay_port)
if opts.relay_username:
self.relay_username.setText(opts.relay_username)
if opts.relay_password:
self.relay_password.setText(unhexlify(opts.relay_password))
(self.relay_tls if opts.encryption == 'TLS' else self.relay_ssl).setChecked(True)
self.connect(self.relay_use_gmail, SIGNAL('clicked(bool)'),
self.create_gmail_relay)
self.connect(self.relay_show_password, SIGNAL('stateChanged(int)'),
lambda
state:self.relay_password.setEchoMode(self.relay_password.Password if
state == 0 else self.relay_password.Normal))
self.connect(self.email_add, SIGNAL('clicked(bool)'),
self.add_email_account)
self.connect(self.email_make_default, SIGNAL('clicked(bool)'),
lambda c: self._email_accounts.make_default(self.email_view.currentIndex()))
self.email_view.resizeColumnsToContents()
self.connect(self.test_email_button, SIGNAL('clicked(bool)'),
self.test_email)
self.connect(self.email_remove, SIGNAL('clicked()'),
self.remove_email_account)
@ -516,68 +476,14 @@ class ConfigDialog(QDialog, Ui_Dialog):
idx = self.email_view.currentIndex()
self._email_accounts.remove(idx)
def create_gmail_relay(self, *args):
self.relay_username.setText('@gmail.com')
self.relay_password.setText('')
self.relay_host.setText('smtp.gmail.com')
self.relay_port.setValue(587)
self.relay_tls.setChecked(True)
info_dialog(self, _('Finish gmail setup'),
_('Dont forget to enter your gmail username and password')).exec_()
self.relay_username.setFocus(Qt.OtherFocusReason)
self.relay_username.setCursorPosition(0)
def set_email_settings(self):
from_ = unicode(self.email_from.text()).strip()
if self._email_accounts.accounts and not from_:
error_dialog(self, _('Bad configuration'),
_('You must set the From email address')).exec_()
return False
username = unicode(self.relay_username.text()).strip()
password = unicode(self.relay_password.text()).strip()
host = unicode(self.relay_host.text()).strip()
if host and not (username and password):
error_dialog(self, _('Bad configuration'),
_('You must set the username and password for '
'the mail server.')).exec_()
to_set = bool(self._email_accounts.accounts)
if not self.send_email_widget.set_email_settings(to_set):
return False
conf = smtp_prefs()
conf.set('from_', from_)
conf.set('accounts', self._email_accounts.accounts)
conf.set('relay_host', host if host else None)
conf.set('relay_port', self.relay_port.value())
conf.set('relay_username', username if username else None)
conf.set('relay_password', hexlify(password))
conf.set('encryption', 'TLS' if self.relay_tls.isChecked() else 'SSL')
return True
def test_email(self, *args):
if self.set_email_settings():
TestEmail(self._email_accounts.accounts, self).exec_()
def test_email_settings(self, to):
opts = smtp_prefs().parse()
from calibre.utils.smtp import sendmail, create_mail
buf = cStringIO.StringIO()
oout, oerr = sys.stdout, sys.stderr
sys.stdout = sys.stderr = buf
tb = None
try:
msg = create_mail(opts.from_, to, 'Test mail from calibre',
'Test mail from calibre')
sendmail(msg, from_=opts.from_, to=[to],
verbose=3, timeout=30, relay=opts.relay_host,
username=opts.relay_username,
password=unhexlify(opts.relay_password),
encryption=opts.encryption, port=opts.relay_port)
except:
import traceback
tb = traceback.format_exc()
tb += '\n\nLog:\n' + buf.getvalue()
finally:
sys.stdout, sys.stderr = oout, oerr
return tb
def add_plugin(self):
path = unicode(self.plugin_path.text())
@ -722,7 +628,7 @@ class ConfigDialog(QDialog, Ui_Dialog):
def browse(self):
dir = choose_dir(self, 'database location dialog',
_('Select database location'))
_('Select location for books'))
if dir:
self.location.setText(dir)

View File

@ -541,38 +541,7 @@
</widget>
<widget class="QWidget" name="page_6">
<layout class="QGridLayout" name="gridLayout_6">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label_22">
<property name="text">
<string>calibre can send your books to you (or your reader) by email</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0" colspan="2">
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<widget class="QLabel" name="label_15">
<property name="text">
<string>Send email &amp;from:</string>
</property>
<property name="buddy">
<cstring>email_from</cstring>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="email_from">
<property name="toolTip">
<string>&lt;p&gt;This is what will be present in the From: field of emails sent by calibre.&lt;br&gt; Set it to your email address</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0" colspan="2">
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<widget class="QTableView" name="email_view">
@ -640,195 +609,18 @@
</item>
</layout>
</item>
<item row="3" column="0">
<widget class="QGroupBox" name="groupBox_5">
<property name="toolTip">
<string>&lt;p&gt;A mail server is useful if the service you are sending mail to only accepts email from well know mail services.</string>
</property>
<property name="title">
<string>Mail &amp;Server</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0" colspan="4">
<widget class="QLabel" name="label_16">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label_22">
<property name="text">
<string>calibre can &lt;b&gt;optionally&lt;/b&gt; use a server to send mail</string>
<string>calibre can send your books to you (or your reader) by email</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_17">
<property name="text">
<string>&amp;Hostname:</string>
</property>
<property name="buddy">
<cstring>relay_host</cstring>
</property>
</widget>
</item>
<item row="1" column="1" colspan="2">
<widget class="QLineEdit" name="relay_host">
<property name="toolTip">
<string>The hostname of your mail server. For e.g. smtp.gmail.com</string>
</property>
</widget>
</item>
<item row="1" column="3">
<layout class="QHBoxLayout" name="horizontalLayout_11">
<item>
<widget class="QLabel" name="label_18">
<property name="text">
<string>&amp;Port:</string>
</property>
<property name="buddy">
<cstring>relay_port</cstring>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="relay_port">
<property name="toolTip">
<string>The port your mail server listens for connections on. The default is 25</string>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>65555</number>
</property>
<property name="value">
<number>25</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_19">
<property name="text">
<string>&amp;Username:</string>
</property>
<property name="buddy">
<cstring>relay_username</cstring>
</property>
</widget>
</item>
<item row="2" column="1" colspan="2">
<widget class="QLineEdit" name="relay_username">
<property name="toolTip">
<string>Your username on the mail server</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_20">
<property name="text">
<string>&amp;Password:</string>
</property>
<property name="buddy">
<cstring>relay_password</cstring>
</property>
</widget>
</item>
<item row="3" column="1" colspan="2">
<widget class="QLineEdit" name="relay_password">
<property name="toolTip">
<string>Your password on the mail server</string>
</property>
<property name="echoMode">
<enum>QLineEdit::Password</enum>
</property>
</widget>
</item>
<item row="3" column="3">
<widget class="QCheckBox" name="relay_show_password">
<property name="text">
<string>&amp;Show</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label_21">
<property name="text">
<string>&amp;Encryption:</string>
</property>
<property name="buddy">
<cstring>relay_tls</cstring>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QRadioButton" name="relay_tls">
<property name="toolTip">
<string>Use TLS encryption when connecting to the mail server. This is the most common.</string>
</property>
<property name="text">
<string>&amp;TLS</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="2" colspan="2">
<widget class="QRadioButton" name="relay_ssl">
<property name="toolTip">
<string>Use SSL encryption when connecting to the mail server.</string>
</property>
<property name="text">
<string>&amp;SSL</string>
</property>
</widget>
</item>
<item row="3" column="4">
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item row="3" column="1">
<layout class="QVBoxLayout" name="verticalLayout_9">
<item>
<widget class="QToolButton" name="relay_use_gmail">
<property name="text">
<string>Use Gmail</string>
</property>
<property name="icon">
<iconset resource="../images.qrc">
<normaloff>:/images/gmail_logo.png</normaloff>:/images/gmail_logo.png</iconset>
</property>
<property name="iconSize">
<size>
<width>48</width>
<height>48</height>
</size>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonTextUnderIcon</enum>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="test_email_button">
<property name="text">
<string>&amp;Test email</string>
</property>
</widget>
</item>
</layout>
<item row="2" column="0" colspan="2">
<widget class="SendEmail" name="send_email_widget" native="true"/>
</item>
</layout>
</widget>
@ -1062,7 +854,8 @@
<item>
<widget class="QLabel" name="label_13">
<property name="text">
<string>If you want to use the content server to access your ebook collection on your iphone with Stanza, you will need to add the URL http://myhostname:8080/stanza as a new catalog in the stanza reader on your iphone. Here myhostname should be the fully qualified hostname or the IP address of this computer.</string>
<string>&lt;p&gt;Remember to leave calibre running as the server only runs as long as calibre is running.
&lt;p&gt;Stanza should see your calibre collection automatically. If not, try adding the URL http://myhostname:8080 as a new catalog in the Stanza reader on your iPhone. Here myhostname should be the fully qualified hostname or the IP address of the computer calibre is running on.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
@ -1216,6 +1009,14 @@
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>SendEmail</class>
<extends>QWidget</extends>
<header>calibre/gui2/wizard/send_email.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources>
<include location="../images.qrc"/>
</resources>

View File

@ -177,7 +177,7 @@
</property>
</widget>
</item>
<item row="3" column="1" colspan="2">
<item row="3" column="1">
<widget class="QSpinBox" name="rating">
<property name="toolTip">
<string>Rating of this book. 0-5 stars</string>
@ -309,28 +309,6 @@
</item>
</layout>
</item>
<item row="7" column="1" colspan="2">
<widget class="QSpinBox" name="series_index">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Series index.</string>
</property>
<property name="whatsThis">
<string>Series index.</string>
</property>
<property name="prefix">
<string>Book </string>
</property>
<property name="minimum">
<number>0</number>
</property>
<property name="maximum">
<number>10000</number>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="label_9">
<property name="text">
@ -357,6 +335,19 @@
<item row="1" column="1">
<widget class="QLineEdit" name="authors"/>
</item>
<item row="7" column="1">
<widget class="QDoubleSpinBox" name="series_index">
<property name="enabled">
<bool>false</bool>
</property>
<property name="prefix">
<string>Book </string>
</property>
<property name="maximum">
<double>9999.989999999999782</double>
</property>
</widget>
</item>
</layout>
</widget>
</item>
@ -640,7 +631,6 @@
<tabstop>series</tabstop>
<tabstop>tag_editor_button</tabstop>
<tabstop>remove_series_button</tabstop>
<tabstop>series_index</tabstop>
<tabstop>isbn</tabstop>
<tabstop>comments</tabstop>
<tabstop>fetch_metadata_button</tabstop>

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 108 KiB

View File

@ -20,7 +20,7 @@ from calibre.gui2 import NONE, TableView, qstring_to_unicode, config, \
error_dialog
from calibre.utils.search_query_parser import SearchQueryParser
from calibre.ebooks.metadata.meta import set_metadata as _set_metadata
from calibre.ebooks.metadata import string_to_authors
from calibre.ebooks.metadata import string_to_authors, fmt_sidx
class LibraryDelegate(QItemDelegate):
COLOR = QColor("blue")
@ -98,40 +98,38 @@ class DateDelegate(QStyledItemDelegate):
qde.setCalendarPopup(True)
return qde
class BooksModel(QAbstractTableModel):
coding = zip(
[1000,900,500,400,100,90,50,40,10,9,5,4,1],
["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]
)
class PubDateDelegate(QStyledItemDelegate):
def displayText(self, val, locale):
return val.toDate().toString('MMM yyyy')
def createEditor(self, parent, option, index):
qde = QStyledItemDelegate.createEditor(self, parent, option, index)
qde.setDisplayFormat('MM yyyy')
qde.setMinimumDate(QDate(101,1,1))
qde.setCalendarPopup(True)
return qde
class BooksModel(QAbstractTableModel):
headers = {
'title' : _("Title"),
'authors' : _("Author(s)"),
'size' : _("Size (MB)"),
'timestamp' : _("Date"),
'pubdate' : _('Published'),
'rating' : _('Rating'),
'publisher' : _("Publisher"),
'tags' : _("Tags"),
'series' : _("Series"),
}
@classmethod
def roman(cls, num):
if num <= 0 or num >= 4000 or int(num) != num:
return str(num)
result = []
for d, r in cls.coding:
while num >= d:
result.append(r)
num -= d
return ''.join(result)
def __init__(self, parent=None, buffer=40):
QAbstractTableModel.__init__(self, parent)
self.db = None
self.column_map = config['column_map']
self.editable_cols = ['title', 'authors', 'rating', 'publisher',
'tags', 'series', 'timestamp']
'tags', 'series', 'timestamp', 'pubdate']
self.default_image = QImage(':/images/book.svg')
self.sorted_on = ('timestamp', Qt.AscendingOrder)
self.last_search = '' # The last search performed on this model
@ -157,8 +155,12 @@ class BooksModel(QAbstractTableModel):
tidx = self.column_map.index('timestamp')
except ValueError:
tidx = -1
try:
pidx = self.column_map.index('pubdate')
except ValueError:
pidx = -1
self.emit(SIGNAL('columns_sorted(int,int)'), idx, tidx)
self.emit(SIGNAL('columns_sorted(int,int,int)'), idx, tidx, pidx)
def set_database(self, db):
@ -186,8 +188,8 @@ class BooksModel(QAbstractTableModel):
self.db = None
self.reset()
def add_books(self, paths, formats, metadata, uris=[], add_duplicates=False):
ret = self.db.add_books(paths, formats, metadata, uris,
def add_books(self, paths, formats, metadata, add_duplicates=False):
ret = self.db.add_books(paths, formats, metadata,
add_duplicates=add_duplicates)
self.count_changed()
return ret
@ -313,7 +315,7 @@ class BooksModel(QAbstractTableModel):
series = self.db.series(idx)
if series:
sidx = self.db.series_index(idx)
sidx = self.__class__.roman(sidx) if self.use_roman_numbers else str(sidx)
sidx = fmt_sidx(sidx, use_roman = self.use_roman_numbers)
data[_('Series')] = _('Book <font face="serif">%s</font> of %s.')%(sidx, series)
return data
@ -492,6 +494,7 @@ class BooksModel(QAbstractTableModel):
ridx = FIELD_MAP['rating']
pidx = FIELD_MAP['publisher']
tmdx = FIELD_MAP['timestamp']
pddx = FIELD_MAP['pubdate']
srdx = FIELD_MAP['series']
tgdx = FIELD_MAP['tags']
siix = FIELD_MAP['series_index']
@ -508,6 +511,12 @@ class BooksModel(QAbstractTableModel):
dt = dt - timedelta(seconds=time.timezone) + timedelta(hours=time.daylight)
return QDate(dt.year, dt.month, dt.day)
def pubdate(r):
dt = self.db.data[r][pddx]
if dt:
dt = dt - timedelta(seconds=time.timezone) + timedelta(hours=time.daylight)
return QDate(dt.year, dt.month, dt.day)
def rating(r):
r = self.db.data[r][ridx]
r = r/2 if r else 0
@ -526,8 +535,8 @@ class BooksModel(QAbstractTableModel):
def series(r):
series = self.db.data[r][srdx]
if series:
return series + ' [%d]'%self.db.data[r][siix]
idx = fmt_sidx(self.db.data[r][siix])
return series + ' [%s]'%idx
def size(r):
size = self.db.data[r][sidx]
if size:
@ -538,6 +547,7 @@ class BooksModel(QAbstractTableModel):
'authors' : authors,
'size' : size,
'timestamp': timestamp,
'pubdate' : pubdate,
'rating' : rating,
'publisher': publisher,
'tags' : tags,
@ -577,7 +587,7 @@ class BooksModel(QAbstractTableModel):
if column not in self.editable_cols:
return False
val = int(value.toInt()[0]) if column == 'rating' else \
value.toDate() if column == 'timestamp' else \
value.toDate() if column in ('timestamp', 'pubdate') else \
unicode(value.toString())
id = self.db.id(row)
if column == 'rating':
@ -585,10 +595,10 @@ class BooksModel(QAbstractTableModel):
val *= 2
self.db.set_rating(id, val)
elif column == 'series':
pat = re.compile(r'\[(\d+)\]')
pat = re.compile(r'\[([.0-9]+)\]')
match = pat.search(val)
if match is not None:
self.db.set_series_index(id, int(match.group(1)))
self.db.set_series_index(id, float(match.group(1)))
val = pat.sub('', val)
val = val.strip()
if val:
@ -598,6 +608,11 @@ class BooksModel(QAbstractTableModel):
return False
dt = datetime(val.year(), val.month(), val.day()) + timedelta(seconds=time.timezone) - timedelta(hours=time.daylight)
self.db.set_timestamp(id, dt)
elif column == 'pubdate':
if val.isNull() or not val.isValid():
return False
dt = datetime(val.year(), val.month(), val.day()) + timedelta(seconds=time.timezone) - timedelta(hours=time.daylight)
self.db.set_pubdate(id, dt)
else:
self.db.set(row, column, val)
self.emit(SIGNAL("dataChanged(QModelIndex, QModelIndex)"), \
@ -625,29 +640,35 @@ class BooksView(TableView):
TableView.__init__(self, parent)
self.rating_delegate = LibraryDelegate(self)
self.timestamp_delegate = DateDelegate(self)
self.pubdate_delegate = PubDateDelegate(self)
self.display_parent = parent
self._model = modelcls(self)
self.setModel(self._model)
self.setSelectionBehavior(QAbstractItemView.SelectRows)
self.setSortingEnabled(True)
try:
self.columns_sorted(self._model.column_map.index('rating'),
self._model.column_map.index('timestamp'))
cm = self._model.column_map
self.columns_sorted(cm.index('rating') if 'rating' in cm else -1,
cm.index('timestamp') if 'timestamp' in cm else -1,
cm.index('pubdate') if 'pubdate' in cm else -1)
except ValueError:
pass
QObject.connect(self.selectionModel(), SIGNAL('currentRowChanged(QModelIndex, QModelIndex)'),
self._model.current_changed)
self.connect(self._model, SIGNAL('columns_sorted(int, int)'), self.columns_sorted, Qt.QueuedConnection)
self.connect(self._model, SIGNAL('columns_sorted(int,int,int)'),
self.columns_sorted, Qt.QueuedConnection)
def columns_sorted(self, rating_col, timestamp_col):
def columns_sorted(self, rating_col, timestamp_col, pubdate_col):
for i in range(self.model().columnCount(None)):
if self.itemDelegateForColumn(i) in (self.rating_delegate,
self.timestamp_delegate):
self.timestamp_delegate, self.pubdate_delegate):
self.setItemDelegateForColumn(i, self.itemDelegate())
if rating_col > -1:
self.setItemDelegateForColumn(rating_col, self.rating_delegate)
if timestamp_col > -1:
self.setItemDelegateForColumn(timestamp_col, self.timestamp_delegate)
if pubdate_col > -1:
self.setItemDelegateForColumn(pubdate_col, self.pubdate_delegate)
def set_context_menu(self, edit_metadata, send_to_device, convert, view,
save, open_folder, book_details, similar_menu=None):

View File

@ -11,11 +11,11 @@ from PyQt4.Qt import Qt, SIGNAL, QObject, QCoreApplication, QUrl, QTimer, \
QModelIndex, QPixmap, QColor, QPainter, QMenu, QIcon, \
QToolButton, QDialog, QDesktopServices, QFileDialog, \
QSystemTrayIcon, QApplication, QKeySequence, QAction, \
QProgressDialog, QMessageBox, QStackedLayout
QMessageBox, QStackedLayout
from PyQt4.QtSvg import QSvgRenderer
from calibre import __version__, __appname__, sanitize_file_name, \
iswindows, isosx, prints
iswindows, isosx, prints, patheq
from calibre.ptempfile import PersistentTemporaryFile
from calibre.utils.config import prefs, dynamic
from calibre.gui2 import APP_UID, warning_dialog, choose_files, error_dialog, \
@ -27,6 +27,7 @@ from calibre.gui2 import APP_UID, warning_dialog, choose_files, error_dialog, \
available_width, GetMetadata
from calibre.gui2.cover_flow import CoverFlow, DatabaseImages, pictureflowerror
from calibre.gui2.widgets import ProgressIndicator
from calibre.gui2.wizard import move_library
from calibre.gui2.dialogs.scheduler import Scheduler
from calibre.gui2.update import CheckForUpdates
from calibre.gui2.main_window import MainWindow, option_parser as _option_parser
@ -297,6 +298,14 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
QObject.connect(self.action_convert,
SIGNAL('triggered(bool)'), self.convert_single)
self.convert_menu = cm
pm = QMenu()
pm.addAction(self.action_preferences)
pm.addAction(_('Run welcome wizard'))
self.connect(pm.actions()[1], SIGNAL('triggered(bool)'),
self.run_wizard)
self.action_preferences.setMenu(pm)
self.preferences_menu = pm
self.tool_bar.widgetForAction(self.action_news).\
setPopupMode(QToolButton.MenuButtonPopup)
self.tool_bar.widgetForAction(self.action_edit).\
@ -311,6 +320,8 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
setPopupMode(QToolButton.MenuButtonPopup)
self.tool_bar.widgetForAction(self.action_view).\
setPopupMode(QToolButton.MenuButtonPopup)
self.tool_bar.widgetForAction(self.action_preferences).\
setPopupMode(QToolButton.MenuButtonPopup)
self.tool_bar.setContextMenuPolicy(Qt.PreventContextMenu)
self.connect(self.preferences_action, SIGNAL('triggered(bool)'),
@ -1376,56 +1387,27 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
self.save_menu.actions()[2].setText(
_('Save only %s format to disk')%
prefs['output_format'].upper())
if self.library_path != d.database_location:
try:
newloc = d.database_location
if not os.path.exists(os.path.join(newloc, 'metadata.db')):
if os.access(self.library_path, os.R_OK):
pd = QProgressDialog('', '', 0, 100, self)
pd.setWindowModality(Qt.ApplicationModal)
pd.setCancelButton(None)
pd.setWindowTitle(_('Copying database'))
pd.show()
self.status_bar.showMessage(
_('Copying library to ')+newloc)
self.setCursor(Qt.BusyCursor)
self.library_view.setEnabled(False)
self.library_view.model().db.move_library_to(
newloc, pd)
else:
try:
db = LibraryDatabase2(newloc)
self.library_view.set_database(db)
except Exception, err:
traceback.print_exc()
d = error_dialog(self, _('Invalid database'),
_('<p>An invalid database already exists at '
'%s, delete it before trying to move the '
'existing database.<br>Error: %s')%(newloc,
str(err)))
d.exec_()
self.library_path = \
self.library_view.model().db.library_path
prefs['library_path'] = self.library_path
except Exception, err:
traceback.print_exc()
d = error_dialog(self, _('Could not move database'),
unicode(err))
d.exec_()
finally:
self.unsetCursor()
self.library_view.setEnabled(True)
self.status_bar.clearMessage()
self.search.clear_to_help()
self.status_bar.reset_info()
self.library_view.sortByColumn(3, Qt.DescendingOrder)
self.library_view.resizeRowsToContents()
if hasattr(d, 'directories'):
set_sidebar_directories(d.directories)
self.library_view.model().read_config()
self.create_device_menu()
if not patheq(self.library_path, d.database_location):
newloc = d.database_location
move_library(self.library_path, newloc, self,
self.library_moved)
def library_moved(self, newloc):
if newloc is None: return
db = LibraryDatabase2(newloc)
self.library_view.set_database(db)
self.status_bar.clearMessage()
self.search.clear_to_help()
self.status_bar.reset_info()
self.library_view.sortByColumn(3, Qt.DescendingOrder)
############################################################################
################################ Book info #################################
@ -1652,6 +1634,17 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
self.hide()
return True
def run_wizard(self, *args):
if self.confirm_quit():
self.run_wizard_b4_shutdown = True
self.restart_after_quit = True
try:
self.shutdown(write_settings=False)
except:
pass
QApplication.instance().quit()
def closeEvent(self, e):
self.write_settings()
@ -1677,7 +1670,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
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 = _('<span style="color:red; font-weight:bold">'
self.latest_version = '<br>'+_('<span style="color:red; font-weight:bold">'
'Latest version: <a href="%s">%s</a></span>')%(url, version)
self.vanity.setText(self.vanity_template%\
(dict(version=self.latest_version,
@ -1726,12 +1719,19 @@ def init_qt(args):
def run_gui(opts, args, actions, listener, app):
initialize_file_icon_provider()
if not dynamic.get('welcome_wizard_was_run', False):
from calibre.gui2.wizard import wizard
wizard().exec_()
dynamic.set('welcome_wizard_was_run', True)
main = Main(listener, opts, actions)
sys.excepthook = main.unhandled_exception
if len(args) > 1:
args[1] = os.path.abspath(args[1])
main.add_filesystem_book(args[1])
ret = app.exec_()
if getattr(main, 'run_wizard_b4_shutdown', False):
from calibre.gui2.wizard import wizard
wizard().exec_()
if getattr(main, 'restart_after_quit', False):
e = sys.executable if getattr(sys, 'froze', False) else sys.argv[0]
print 'Restarting with:', e, sys.argv

View File

@ -68,7 +68,8 @@ def convert_single_ebook(parent, db, book_ids, auto_conversion=False, out_format
msg = '%s' % '\n'.join(res)
warning_dialog(parent, _('Could not convert some books'),
_('Could not convert %d of %d books, because no suitable source format was found.' % (len(res), total)),
_('Could not convert %d of %d books, because no suitable source'
' format was found.') % (len(res), total),
msg).exec_()
return jobs, changed, bad
@ -122,7 +123,8 @@ def convert_bulk_ebook(parent, db, book_ids, out_format=None):
msg = '%s' % '\n'.join(res)
warning_dialog(parent, _('Could not convert some books'),
_('Could not convert %d of %d books, because no suitable source format was found.' % (len(res), total)),
_('Could not convert %d of %d books, because no suitable '
'source format was found.') % (len(res), total),
msg).exec_()
return jobs, changed, bad

View File

@ -0,0 +1,503 @@
#!/usr/bin/env python
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
from __future__ import with_statement
__license__ = 'GPL v3'
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en'
import os, traceback, re
from Queue import Empty, Queue
from contextlib import closing
from PyQt4.Qt import QWizard, QWizardPage, QPixmap, Qt, QAbstractListModel, \
QVariant, QItemSelectionModel, SIGNAL, QObject, QTimer
from calibre import __appname__, patheq
from calibre.library.database2 import LibraryDatabase2
from calibre.library.move import MoveLibrary
from calibre.resources import server_resources
from calibre.gui2.wizard.send_email import smtp_prefs
from calibre.gui2.wizard.device_ui import Ui_WizardPage as DeviceUI
from calibre.gui2.wizard.library_ui import Ui_WizardPage as LibraryUI
from calibre.gui2.wizard.finish_ui import Ui_WizardPage as FinishUI
from calibre.gui2.wizard.kindle_ui import Ui_WizardPage as KindleUI
from calibre.gui2.wizard.stanza_ui import Ui_WizardPage as StanzaUI
from calibre.utils.config import dynamic, prefs
from calibre.gui2 import NONE, choose_dir, error_dialog
from calibre.gui2.dialogs.progress import ProgressDialog
class Device(object):
output_profile = 'default'
output_format = 'EPUB'
name = _('Default')
manufacturer = _('Default')
id = 'default'
@classmethod
def set_output_profile(cls):
if cls.output_profile:
from calibre.ebooks.conversion.config import load_defaults, save_defaults
recs = load_defaults('page_setup')
recs['output_profile'] = cls.output_profile
save_defaults('page_setup', recs)
@classmethod
def set_output_format(cls):
if cls.output_format:
prefs.set('output_format', cls.output_format)
@classmethod
def commit(cls):
cls.set_output_profile()
cls.set_output_format()
class Kindle(Device):
output_profile = 'kindle'
output_format = 'MOBI'
name = 'Kindle 1 or 2'
manufacturer = 'Amazon'
id = 'kindle'
class Sony500(Device):
output_profile = 'sony'
name = 'SONY PRS 500'
output_format = 'LRF'
manufacturer = 'SONY'
id = 'prs500'
class Sony505(Sony500):
output_format = 'EPUB'
name = 'SONY PRS 505/700'
id = 'prs505'
class CybookG3(Device):
name = 'Cybook Gen 3'
output_format = 'MOBI'
output_profile = 'cybookg3'
manufacturer = 'Booken'
id = 'cybookg3'
class BeBook(Device):
name = 'BeBook or BeBook Mini'
output_format = 'EPUB'
output_profile = 'sony'
manufacturer = 'Endless Ideas'
id = 'bebook'
class iPhone(Device):
name = 'iPhone/iTouch + Stanza'
output_format = 'EPUB'
manufacturer = 'Apple'
id = 'iphone'
class Hanlin(Device):
name = 'Hanlin V3'
output_format = 'MOBI'
output_profile = 'hanlinv3'
manufacturer = 'Hanlin'
id = 'hanlinv3'
def get_devices():
for x in globals().values():
if isinstance(x, type) and issubclass(x, Device):
yield x
def get_manufacturers():
mans = set([])
for x in get_devices():
mans.add(x.manufacturer)
mans.remove(_('Default'))
return [_('Default')] + sorted(mans)
def get_devices_of(manufacturer):
ans = [d for d in get_devices() if d.manufacturer == manufacturer]
return sorted(ans, cmp=lambda x,y:cmp(x.name, y.name))
class ManufacturerModel(QAbstractListModel):
def __init__(self):
QAbstractListModel.__init__(self)
self.manufacturers = get_manufacturers()
def rowCount(self, p):
return len(self.manufacturers)
def columnCount(self, p):
return 1
def data(self, index, role):
if role == Qt.DisplayRole:
return QVariant(self.manufacturers[index.row()])
if role == Qt.UserRole:
return self.manufacturers[index.row()]
return NONE
def index_of(self, man):
for i, x in enumerate(self.manufacturers):
if x == man:
return self.index(i)
class DeviceModel(QAbstractListModel):
def __init__(self, manufacturer):
QAbstractListModel.__init__(self)
self.devices = get_devices_of(manufacturer)
def rowCount(self, p):
return len(self.devices)
def columnCount(self, p):
return 1
def data(self, index, role):
if role == Qt.DisplayRole:
return QVariant(self.devices[index.row()].name)
if role == Qt.UserRole:
return self.devices[index.row()]
return NONE
def index_of(self, dev):
for i, device in enumerate(self.devices):
if device is dev:
return self.index(i)
class KindlePage(QWizardPage, KindleUI):
ID = 3
def __init__(self):
QWizardPage.__init__(self)
self.setupUi(self)
def initializePage(self):
opts = smtp_prefs().parse()
for x in opts.accounts.keys():
if x.strip().endswith('@kindle.com'):
self.to_address.setText(x)
def x():
t = unicode(self.to_address.text())
if t.strip():
return t.strip()
self.send_email_widget.initialize(x)
def commit(self):
x = unicode(self.to_address.text()).strip()
parts = x.split('@')
if len(parts) < 2 or not parts[0]: return
if self.send_email_widget.set_email_settings(True):
conf = smtp_prefs()
accounts = conf.get('accounts', {})
if not accounts: accounts = {}
for y in accounts.values():
y[2] = False
accounts[x] = ['AZW, MOBI, TPZ, PRC, AZW1', True, True]
conf.set('accounts', accounts)
def nextId(self):
return FinishPage.ID
class StanzaPage(QWizardPage, StanzaUI):
ID = 5
def __init__(self):
QWizardPage.__init__(self)
self.setupUi(self)
self.connect(self.content_server, SIGNAL('stateChanged(int)'), self.set_port)
def initializePage(self):
from calibre.gui2 import config
yes = config['autolaunch_server']
self.content_server.setChecked(yes)
self.set_port()
def nextId(self):
return FinishPage.ID
def commit(self):
p = self.set_port()
if p is not None:
from calibre.library import server_config
c = server_config()
c.set('port', p)
def set_port(self, *args):
if not self.content_server.isChecked(): return
import socket
s = socket.socket()
with closing(s):
for p in range(8080, 8100):
try:
s.bind(('0.0.0.0', p))
t = unicode(self.instructions.text())
t = re.sub(r':\d+', ':'+str(p), t)
self.instructions.setText(t)
return p
except:
continue
class DevicePage(QWizardPage, DeviceUI):
ID = 2
def __init__(self):
QWizardPage.__init__(self)
self.setupUi(self)
self.registerField("manufacturer", self.manufacturer_view)
self.registerField("device", self.device_view)
def initializePage(self):
self.man_model = ManufacturerModel()
self.manufacturer_view.setModel(self.man_model)
previous = dynamic.get('welcome_wizard_device', False)
if previous:
previous = [x for x in get_devices() if \
x.id == previous]
if not previous:
previous = [Device]
previous = previous[0]
else:
previous = Device
idx = self.man_model.index_of(previous.manufacturer)
if idx is None:
idx = self.man_model.index_of(Device.manufacturer)
previous = Device
self.manufacturer_view.selectionModel().select(idx,
QItemSelectionModel.Select)
self.dev_model = DeviceModel(self.man_model.data(idx, Qt.UserRole))
idx = self.dev_model.index_of(previous)
self.device_view.setModel(self.dev_model)
self.device_view.selectionModel().select(idx,
QItemSelectionModel.Select)
self.connect(self.manufacturer_view.selectionModel(),
SIGNAL('selectionChanged(QItemSelection,QItemSelection)'),
self.manufacturer_changed)
def manufacturer_changed(self, current, previous):
new = list(current.indexes())[0]
man = self.man_model.data(new, Qt.UserRole)
self.dev_model = DeviceModel(man)
self.device_view.setModel(self.dev_model)
self.device_view.selectionModel().select(self.dev_model.index(0),
QItemSelectionModel.Select)
def commit(self):
idx = list(self.device_view.selectionModel().selectedIndexes())[0]
dev = self.dev_model.data(idx, Qt.UserRole)
dev.commit()
dynamic.set('welcome_wizard_device', dev.id)
def nextId(self):
idx = list(self.device_view.selectionModel().selectedIndexes())[0]
dev = self.dev_model.data(idx, Qt.UserRole)
if dev is Kindle:
return KindlePage.ID
if dev is iPhone:
return StanzaPage.ID
return FinishPage.ID
class MoveMonitor(QObject):
def __init__(self, worker, rq, callback, parent):
QObject.__init__(self, parent)
self.worker = worker
self.rq = rq
self.callback = callback
self.parent = parent
self.worker.start()
self.dialog = ProgressDialog(_('Moving library...'), '',
max=self.worker.total, parent=parent)
self.dialog.button_box.setDisabled(True)
self.dialog.setModal(True)
self.dialog.show()
self.timer = QTimer(self)
self.connect(self.timer, SIGNAL('timeout()'), self.check)
self.timer.start(200)
def check(self):
if self.worker.is_alive():
self.update()
else:
self.timer.stop()
self.dialog.hide()
if self.worker.failed:
error_dialog(self.parent, _('Failed to move library'),
_('Failed to move library'), self.worker.details, show=True)
return self.callback(None)
else:
return self.callback(self.worker.to)
def update(self):
try:
title = self.rq.get_nowait()[-1]
self.dialog.value += 1
self.dialog.set_msg(_('Copied') + ' '+title)
except Empty:
pass
class Callback(object):
def __init__(self, callback):
self.callback = callback
def __call__(self, newloc):
if newloc is not None:
prefs['library_path'] = newloc
self.callback(newloc)
_mm = None
def move_library(oldloc, newloc, parent, callback_on_complete):
callback = Callback(callback_on_complete)
try:
if not os.path.exists(os.path.join(newloc, 'metadata.db')):
if oldloc and os.access(os.path.join(oldloc, 'metadata.db'), os.R_OK):
# Move old library to new location
try:
db = LibraryDatabase2(oldloc)
except:
return move_library(None, newloc, parent,
callback)
else:
rq = Queue()
m = MoveLibrary(oldloc, newloc, db.data.count(), rq)
global _mm
_mm = MoveMonitor(m, rq, callback, parent)
return
else:
# Create new library at new location
db = LibraryDatabase2(newloc)
callback(newloc)
return
# Try to load existing library at new location
try:
ndb = LibraryDatabase2(newloc)
except Exception, err:
det = traceback.format_exc()
error_dialog(parent, _('Invalid database'),
_('<p>An invalid library already exists at '
'%s, delete it before trying to move the '
'existing library.<br>Error: %s')%(newloc,
str(err)), det, show=True)
callback(None)
return
else:
callback(newloc)
return
except Exception, err:
det = traceback.format_exc()
error_dialog(parent, _('Could not move library'),
unicode(err), det, show=True)
callback(None)
class LibraryPage(QWizardPage, LibraryUI):
ID = 1
def __init__(self):
QWizardPage.__init__(self)
self.setupUi(self)
self.registerField('library_location', self.location)
self.connect(self.button_change, SIGNAL('clicked()'), self.change)
def change(self):
dir = choose_dir(self, 'database location dialog',
_('Select location for books'))
if dir:
self.location.setText(dir)
def initializePage(self):
lp = prefs['library_path']
if not lp:
lp = os.path.expanduser('~')
self.location.setText(lp)
def isComplete(self):
lp = unicode(self.location.text())
return lp and os.path.exists(lp) and os.path.isdir(lp) and os.access(lp,
os.W_OK)
def commit(self, completed):
oldloc = prefs['library_path']
newloc = unicode(self.location.text())
if not patheq(oldloc, newloc):
move_library(oldloc, newloc, self.wizard(), completed)
return True
return False
def nextId(self):
return DevicePage.ID
class FinishPage(QWizardPage, FinishUI):
ID = 4
def __init__(self):
QWizardPage.__init__(self)
self.setupUi(self)
def nextId(self):
return -1
class Wizard(QWizard):
def __init__(self, parent):
QWizard.__init__(self, parent)
self.setWindowTitle(__appname__+' '+_('welcome wizard'))
p = QPixmap()
p.loadFromData(server_resources['calibre.png'])
self.setPixmap(self.LogoPixmap, p.scaledToHeight(80,
Qt.SmoothTransformation))
self.setPixmap(self.WatermarkPixmap,
QPixmap(':/images/welcome_wizard.svg'))
self.setPixmap(self.BackgroundPixmap, QPixmap(':/images/wizard.svg'))
self.device_page = DevicePage()
self.library_page = LibraryPage()
self.finish_page = FinishPage()
self.kindle_page = KindlePage()
self.stanza_page = StanzaPage()
self.setPage(self.library_page.ID, self.library_page)
self.setPage(self.device_page.ID, self.device_page)
self.setPage(self.finish_page.ID, self.finish_page)
self.setPage(self.kindle_page.ID, self.kindle_page)
self.setPage(self.stanza_page.ID, self.stanza_page)
self.device_extra_page = None
def accept(self):
self.device_page.commit()
if not self.library_page.commit(self.completed):
self.completed(None)
def completed(self, newloc):
return QWizard.accept(self)
def wizard(parent=None):
w = Wizard(parent)
return w
if __name__ == '__main__':
from PyQt4.Qt import QApplication
app = QApplication([])
wizard().exec_()

View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>WizardPage</class>
<widget class="QWizardPage" name="WizardPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>Welcome to calibre</string>
</property>
<property name="windowIcon">
<iconset resource="../images.qrc">
<normaloff>:/images/wizard.svg</normaloff>:/images/wizard.svg</iconset>
</property>
<property name="title">
<string>Welcome to calibre</string>
</property>
<property name="subTitle">
<string>The one stop solution to all your e-book needs.</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label">
<property name="text">
<string>Choose your book reader. This will set the conversion options to produce books optimized for your device.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>&amp;Manufacturers</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QListView" name="manufacturer_view">
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="1" column="1">
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>&amp;Devices</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QListView" name="device_view">
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<resources>
<include location="../images.qrc"/>
</resources>
<connections/>
</ui>

View File

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>WizardPage</class>
<widget class="QWizardPage" name="WizardPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>WizardPage</string>
</property>
<property name="title">
<string>Welcome to calibre</string>
</property>
<property name="subTitle">
<string>The one stop solution to all your e-book needs.</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>&lt;h2&gt;Congratulations!&lt;/h2&gt; You have succesfully setup calibre. Press the Finish button to apply your settings.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>56</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<string>&lt;h2&gt;Demo videos&lt;/h2&gt;Videos demonstrating the various features of calibre are available &lt;a href=&quot;http://calibre.kovidgoyal.net/downloads/videos/&quot;&gt;online&lt;/a&gt;.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
<property name="openExternalLinks">
<bool>true</bool>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse</set>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>56</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>&lt;h2&gt;User Manual&lt;/h2&gt;A User Manual is also available &lt;a href=&quot;http://calibre.kovidgoyal.net/user_manual&quot;&gt;online&lt;/a&gt;.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
<property name="openExternalLinks">
<bool>true</bool>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse</set>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>WizardPage</class>
<widget class="QWizardPage" name="WizardPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>WizardPage</string>
</property>
<property name="title">
<string>Welcome to calibre</string>
</property>
<property name="subTitle">
<string>The one stop solution to all your e-book needs.</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label">
<property name="text">
<string>&lt;p&gt;calibre can automatically send books by email to your Kindle. To do that you have to setup email delivery below. The easiest way is to setup a free &lt;a href=&quot;http://gmail.com&quot;&gt;gmail account&lt;/a&gt; and click the Use gmail button below. You will also have to register your gmail address in your Amazon account.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
<property name="openExternalLinks">
<bool>true</bool>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>&amp;Kindle email:</string>
</property>
<property name="buddy">
<cstring>to_address</cstring>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="to_address"/>
</item>
<item row="2" column="0" colspan="2">
<widget class="SendEmail" name="send_email_widget" native="true"/>
</item>
<item row="3" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>SendEmail</class>
<extends>QWidget</extends>
<header>calibre/gui2/wizard/send_email.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>WizardPage</class>
<widget class="QWizardPage" name="WizardPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>481</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>WizardPage</string>
</property>
<property name="title">
<string>Welcome to calibre</string>
</property>
<property name="subTitle">
<string>The one stop solution to all your e-book needs.</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label">
<property name="text">
<string>Choose a location for your books. When you add books to calibre, they will be stored here:</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLineEdit" name="location">
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="button_change">
<property name="text">
<string>&amp;Change</string>
</property>
</widget>
</item>
<item row="3" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="0" colspan="2">
<widget class="QLabel" name="label_2">
<property name="text">
<string>If you have an existing calibre library, it will be copied to the new location. If a calibre library already exists at the new location, calibre will switch to using it.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,143 @@
#!/usr/bin/env python
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
from __future__ import with_statement
__license__ = 'GPL v3'
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en'
import cStringIO, sys
from binascii import hexlify, unhexlify
from PyQt4.Qt import QWidget, SIGNAL, QDialog, Qt
from calibre.gui2.wizard.send_email_ui import Ui_Form
from calibre.utils.smtp import config as smtp_prefs
from calibre.gui2.dialogs.test_email_ui import Ui_Dialog as TE_Dialog
from calibre.gui2 import error_dialog, info_dialog
class TestEmail(QDialog, TE_Dialog):
def __init__(self, pa, parent):
QDialog.__init__(self, parent)
TE_Dialog.__init__(self)
self.setupUi(self)
opts = smtp_prefs().parse()
self.test_func = parent.test_email_settings
self.connect(self.test_button, SIGNAL('clicked(bool)'), self.test)
self.from_.setText(unicode(self.from_.text())%opts.from_)
if pa:
self.to.setText(pa)
if opts.relay_host:
self.label.setText(_('Using: %s:%s@%s:%s and %s encryption')%
(opts.relay_username, unhexlify(opts.relay_password),
opts.relay_host, opts.relay_port, opts.encryption))
def test(self):
self.log.setPlainText(_('Sending...'))
self.test_button.setEnabled(False)
try:
tb = self.test_func(unicode(self.to.text()))
if not tb:
tb = _('Mail successfully sent')
self.log.setPlainText(tb)
finally:
self.test_button.setEnabled(True)
class SendEmail(QWidget, Ui_Form):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
self.setupUi(self)
def initialize(self, preferred_to_address):
self.preferred_to_address = preferred_to_address
opts = smtp_prefs().parse()
self.smtp_opts = opts
if opts.from_:
self.email_from.setText(opts.from_)
if opts.relay_host:
self.relay_host.setText(opts.relay_host)
self.relay_port.setValue(opts.relay_port)
if opts.relay_username:
self.relay_username.setText(opts.relay_username)
if opts.relay_password:
self.relay_password.setText(unhexlify(opts.relay_password))
(self.relay_tls if opts.encryption == 'TLS' else self.relay_ssl).setChecked(True)
self.connect(self.relay_use_gmail, SIGNAL('clicked(bool)'),
self.create_gmail_relay)
self.connect(self.relay_show_password, SIGNAL('stateChanged(int)'),
lambda
state:self.relay_password.setEchoMode(self.relay_password.Password if
state == 0 else self.relay_password.Normal))
self.connect(self.test_email_button, SIGNAL('clicked(bool)'),
self.test_email)
def test_email(self, *args):
pa = self.preferred_to_address()
to_set = pa is not None
if self.set_email_settings(to_set):
TestEmail(pa, self).exec_()
def test_email_settings(self, to):
opts = smtp_prefs().parse()
from calibre.utils.smtp import sendmail, create_mail
buf = cStringIO.StringIO()
oout, oerr = sys.stdout, sys.stderr
sys.stdout = sys.stderr = buf
tb = None
try:
msg = create_mail(opts.from_, to, 'Test mail from calibre',
'Test mail from calibre')
sendmail(msg, from_=opts.from_, to=[to],
verbose=3, timeout=30, relay=opts.relay_host,
username=opts.relay_username,
password=unhexlify(opts.relay_password),
encryption=opts.encryption, port=opts.relay_port)
except:
import traceback
tb = traceback.format_exc()
tb += '\n\nLog:\n' + buf.getvalue()
finally:
sys.stdout, sys.stderr = oout, oerr
return tb
def create_gmail_relay(self, *args):
self.relay_username.setText('@gmail.com')
self.relay_password.setText('')
self.relay_host.setText('smtp.gmail.com')
self.relay_port.setValue(587)
self.relay_tls.setChecked(True)
info_dialog(self, _('Finish gmail setup'),
_('Dont forget to enter your gmail username and password')).exec_()
self.relay_username.setFocus(Qt.OtherFocusReason)
self.relay_username.setCursorPosition(0)
def set_email_settings(self, to_set):
from_ = unicode(self.email_from.text()).strip()
if to_set and not from_:
error_dialog(self, _('Bad configuration'),
_('You must set the From email address')).exec_()
return False
username = unicode(self.relay_username.text()).strip()
password = unicode(self.relay_password.text()).strip()
host = unicode(self.relay_host.text()).strip()
if host and not (username and password):
error_dialog(self, _('Bad configuration'),
_('You must set the username and password for '
'the mail server.')).exec_()
return False
conf = smtp_prefs()
conf.set('from_', from_)
conf.set('relay_host', host if host else None)
conf.set('relay_port', self.relay_port.value())
conf.set('relay_username', username if username else None)
conf.set('relay_password', hexlify(password))
conf.set('encryption', 'TLS' if self.relay_tls.isChecked() else 'SSL')
return True

View File

@ -0,0 +1,234 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Form</class>
<widget class="QWidget" name="Form">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>585</width>
<height>238</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0" colspan="2">
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<widget class="QLabel" name="label_15">
<property name="text">
<string>Send email &amp;from:</string>
</property>
<property name="buddy">
<cstring>email_from</cstring>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="email_from">
<property name="toolTip">
<string>&lt;p&gt;This is what will be present in the From: field of emails sent by calibre.&lt;br&gt; Set it to your email address</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QGroupBox" name="groupBox_5">
<property name="toolTip">
<string>&lt;p&gt;A mail server is useful if the service you are sending mail to only accepts email from well know mail services.</string>
</property>
<property name="title">
<string>Mail &amp;Server</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0" colspan="4">
<widget class="QLabel" name="label_16">
<property name="text">
<string>calibre can &lt;b&gt;optionally&lt;/b&gt; use a server to send mail</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_17">
<property name="text">
<string>&amp;Hostname:</string>
</property>
<property name="buddy">
<cstring>relay_host</cstring>
</property>
</widget>
</item>
<item row="1" column="1" colspan="2">
<widget class="QLineEdit" name="relay_host">
<property name="toolTip">
<string>The hostname of your mail server. For e.g. smtp.gmail.com</string>
</property>
</widget>
</item>
<item row="1" column="3">
<layout class="QHBoxLayout" name="horizontalLayout_11">
<item>
<widget class="QLabel" name="label_18">
<property name="text">
<string>&amp;Port:</string>
</property>
<property name="buddy">
<cstring>relay_port</cstring>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="relay_port">
<property name="toolTip">
<string>The port your mail server listens for connections on. The default is 25</string>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>65555</number>
</property>
<property name="value">
<number>25</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_19">
<property name="text">
<string>&amp;Username:</string>
</property>
<property name="buddy">
<cstring>relay_username</cstring>
</property>
</widget>
</item>
<item row="2" column="1" colspan="2">
<widget class="QLineEdit" name="relay_username">
<property name="toolTip">
<string>Your username on the mail server</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_20">
<property name="text">
<string>&amp;Password:</string>
</property>
<property name="buddy">
<cstring>relay_password</cstring>
</property>
</widget>
</item>
<item row="3" column="1" colspan="2">
<widget class="QLineEdit" name="relay_password">
<property name="toolTip">
<string>Your password on the mail server</string>
</property>
<property name="echoMode">
<enum>QLineEdit::Password</enum>
</property>
</widget>
</item>
<item row="3" column="3">
<widget class="QCheckBox" name="relay_show_password">
<property name="text">
<string>&amp;Show</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label_21">
<property name="text">
<string>&amp;Encryption:</string>
</property>
<property name="buddy">
<cstring>relay_tls</cstring>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QRadioButton" name="relay_tls">
<property name="toolTip">
<string>Use TLS encryption when connecting to the mail server. This is the most common.</string>
</property>
<property name="text">
<string>&amp;TLS</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="2" colspan="2">
<widget class="QRadioButton" name="relay_ssl">
<property name="toolTip">
<string>Use SSL encryption when connecting to the mail server.</string>
</property>
<property name="text">
<string>&amp;SSL</string>
</property>
</widget>
</item>
<item row="3" column="4">
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item row="1" column="1">
<layout class="QVBoxLayout" name="verticalLayout_9">
<item>
<widget class="QToolButton" name="relay_use_gmail">
<property name="text">
<string>Use Gmail</string>
</property>
<property name="icon">
<iconset resource="../images.qrc">
<normaloff>:/images/gmail_logo.png</normaloff>:/images/gmail_logo.png</iconset>
</property>
<property name="iconSize">
<size>
<width>48</width>
<height>48</height>
</size>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonTextUnderIcon</enum>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="test_email_button">
<property name="text">
<string>&amp;Test email</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources>
<include location="../images.qrc"/>
</resources>
<connections/>
</ui>

View File

@ -0,0 +1,97 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>WizardPage</class>
<widget class="QWizardPage" name="WizardPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>WizardPage</string>
</property>
<property name="title">
<string>Welcome to calibre</string>
</property>
<property name="subTitle">
<string>The one stop solution to all your e-book needs.</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>&lt;p&gt;If you use the &lt;a href=&quot;http://www.lexcycle.com/download&quot;&gt;Stanza&lt;/a&gt; e-book app on your iPhone/iTouch, you can access your calibre book collection directly on the device. To do this you have to turn on the calibre content server.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
<property name="openExternalLinks">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QCheckBox" name="content_server">
<property name="text">
<string>Turn on the &amp;content server</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="instructions">
<property name="text">
<string>&lt;p&gt;Remember to leave calibre running as the server only runs as long as calibre is running.
&lt;p&gt;Stanza should see your calibre collection automatically. If not, try adding the URL http://myhostname:8080 as a new catalog in the Stanza reader on your iPhone. Here myhostname should be the fully qualified hostname or the IP address of the computer calibre is running on.</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -991,9 +991,9 @@ ALTER TABLE books ADD COLUMN isbn TEXT DEFAULT "" COLLATE NOCASE;
else:
ans = self.conn.get('SELECT series_index FROM books WHERE id=?', (index,), all=False)
try:
return int(ans)
return float(ans)
except:
return 1
return 1.0
def books_in_series(self, series_id):
'''

View File

@ -50,7 +50,8 @@ copyfile = os.link if hasattr(os, 'link') else shutil.copyfile
FIELD_MAP = {'id':0, 'title':1, 'authors':2, 'publisher':3, 'rating':4, 'timestamp':5,
'size':6, 'tags':7, 'comments':8, 'series':9, 'series_index':10,
'sort':11, 'author_sort':12, 'formats':13, 'isbn':14, 'path':15}
'sort':11, 'author_sort':12, 'formats':13, 'isbn':14, 'path':15,
'lccn':16, 'pubdate':17, 'flags':18}
INDEX_MAP = dict(zip(FIELD_MAP.values(), FIELD_MAP.keys()))
@ -472,6 +473,53 @@ class LibraryDatabase2(LibraryDatabase):
FROM books;
''')
def upgrade_version_4(self):
'Rationalize books table'
self.conn.executescript('''
BEGIN TRANSACTION;
CREATE TEMPORARY TABLE
books_backup(id,title,sort,timestamp,series_index,author_sort,isbn,path);
INSERT INTO books_backup SELECT id,title,sort,timestamp,series_index,author_sort,isbn,path FROM books;
DROP TABLE books;
CREATE TABLE books ( id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL DEFAULT 'Unknown' COLLATE NOCASE,
sort TEXT COLLATE NOCASE,
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
pubdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
series_index REAL NOT NULL DEFAULT 1.0,
author_sort TEXT COLLATE NOCASE,
isbn TEXT DEFAULT "" COLLATE NOCASE,
lccn TEXT DEFAULT "" COLLATE NOCASE,
path TEXT NOT NULL DEFAULT "",
flags INTEGER NOT NULL DEFAULT 1
);
INSERT INTO
books (id,title,sort,timestamp,pubdate,series_index,author_sort,isbn,path)
SELECT id,title,sort,timestamp,timestamp,series_index,author_sort,isbn,path FROM books_backup;
DROP TABLE books_backup;
DROP VIEW meta;
CREATE VIEW meta AS
SELECT id, title,
(SELECT concat(name) FROM authors WHERE authors.id IN (SELECT author from books_authors_link WHERE book=books.id)) authors,
(SELECT name FROM publishers WHERE publishers.id IN (SELECT publisher from books_publishers_link WHERE book=books.id)) publisher,
(SELECT rating FROM ratings WHERE ratings.id IN (SELECT rating from books_ratings_link WHERE book=books.id)) rating,
timestamp,
(SELECT MAX(uncompressed_size) FROM data WHERE book=books.id) size,
(SELECT concat(name) FROM tags WHERE tags.id IN (SELECT tag from books_tags_link WHERE book=books.id)) tags,
(SELECT text FROM comments WHERE book=books.id) comments,
(SELECT name FROM series WHERE series.id IN (SELECT series FROM books_series_link WHERE book=books.id)) series,
series_index,
sort,
author_sort,
(SELECT concat(format) FROM data WHERE data.book=books.id) formats,
isbn,
path,
lccn,
pubdate,
flags
FROM books;
''')
def last_modified(self):
''' Return last modified time as a UTC datetime object'''
@ -610,6 +658,16 @@ class LibraryDatabase2(LibraryDatabase):
return img
return f if as_file else f.read()
def timestamp(self, index, index_is_id=False):
if index_is_id:
return self.conn.get('SELECT timestamp FROM meta WHERE id=?', (index,), all=False)
return self.data[index][FIELD_MAP['timestamp']]
def pubdate(self, index, index_is_id=False):
if index_is_id:
return self.conn.get('SELECT pubdate FROM meta WHERE id=?', (index,), all=False)
return self.data[index][FIELD_MAP['pubdate']]
def get_metadata(self, idx, index_is_id=False, get_cover=False):
'''
Convenience method to return metadata as a L{MetaInformation} object.
@ -621,6 +679,7 @@ class LibraryDatabase2(LibraryDatabase):
mi.comments = self.comments(idx, index_is_id=index_is_id)
mi.publisher = self.publisher(idx, index_is_id=index_is_id)
mi.timestamp = self.timestamp(idx, index_is_id=index_is_id)
mi.pubdate = self.pubdate(idx, index_is_id=index_is_id)
tags = self.tags(idx, index_is_id=index_is_id)
if tags:
mi.tags = [i.strip() for i in tags.split(',')]
@ -917,7 +976,7 @@ class LibraryDatabase2(LibraryDatabase):
self.set_comment(id, mi.comments, notify=False)
if mi.isbn and mi.isbn.strip():
self.set_isbn(id, mi.isbn, notify=False)
if mi.series_index and mi.series_index > 0:
if mi.series_index:
self.set_series_index(id, mi.series_index, notify=False)
if getattr(mi, 'timestamp', None) is not None:
self.set_timestamp(id, mi.timestamp, notify=False)
@ -983,6 +1042,15 @@ class LibraryDatabase2(LibraryDatabase):
if notify:
self.notify('metadata', [id])
def set_pubdate(self, id, dt, notify=True):
if dt:
self.conn.execute('UPDATE books SET pubdate=? WHERE id=?', (dt, id))
self.data.set(id, FIELD_MAP['pubdate'], dt, row_is_id=True)
self.conn.commit()
if notify:
self.notify('metadata', [id])
def set_publisher(self, id, publisher, notify=True):
self.conn.execute('DELETE FROM books_publishers_link WHERE book=?',(id,))
self.conn.execute('DELETE FROM publishers WHERE (SELECT COUNT(id) FROM books_publishers_link WHERE publisher=publishers.id) < 1')
@ -1103,17 +1171,11 @@ class LibraryDatabase2(LibraryDatabase):
def set_series_index(self, id, idx, notify=True):
if idx is None:
idx = 1
idx = int(idx)
self.conn.execute('UPDATE books SET series_index=? WHERE id=?', (int(idx), id))
idx = 1.0
idx = float(idx)
self.conn.execute('UPDATE books SET series_index=? WHERE id=?', (idx, id))
self.conn.commit()
try:
row = self.row(id)
if row is not None:
self.data.set(row, 10, idx)
except ValueError:
pass
self.data.set(id, FIELD_MAP['series_index'], int(idx), row_is_id=True)
self.data.set(id, FIELD_MAP['series_index'], idx, row_is_id=True)
if notify:
self.notify('metadata', [id])
@ -1156,7 +1218,7 @@ class LibraryDatabase2(LibraryDatabase):
stream.seek(0)
mi = get_metadata(stream, format, use_libprs_metadata=False)
stream.seek(0)
mi.series_index = 1
mi.series_index = 1.0
mi.tags = [_('News'), recipe.title]
obj = self.conn.execute('INSERT INTO books(title, author_sort) VALUES (?, ?)',
(mi.title, mi.authors[0]))
@ -1188,7 +1250,7 @@ class LibraryDatabase2(LibraryDatabase):
def create_book_entry(self, mi, cover=None, add_duplicates=True):
if not add_duplicates and self.has_book(mi):
return None
series_index = 1 if mi.series_index is None else mi.series_index
series_index = 1.0 if mi.series_index is None else mi.series_index
aus = mi.author_sort if mi.author_sort else ', '.join(mi.authors)
title = mi.title
if isinstance(aus, str):
@ -1207,33 +1269,29 @@ class LibraryDatabase2(LibraryDatabase):
return id
def add_books(self, paths, formats, metadata, uris=[], add_duplicates=True):
def add_books(self, paths, formats, metadata, add_duplicates=True):
'''
Add a book to the database. The result cache is not updated.
:param:`paths` List of paths to book files or file-like objects
'''
formats, metadata, uris = iter(formats), iter(metadata), iter(uris)
formats, metadata = iter(formats), iter(metadata)
duplicates = []
ids = []
for path in paths:
mi = metadata.next()
format = formats.next()
try:
uri = uris.next()
except StopIteration:
uri = None
if not add_duplicates and self.has_book(mi):
duplicates.append((path, format, mi, uri))
duplicates.append((path, format, mi))
continue
series_index = 1 if mi.series_index is None else mi.series_index
series_index = 1.0 if mi.series_index is None else mi.series_index
aus = mi.author_sort if mi.author_sort else ', '.join(mi.authors)
title = mi.title
if isinstance(aus, str):
aus = aus.decode(preferred_encoding, 'replace')
if isinstance(title, str):
title = title.decode(preferred_encoding)
obj = self.conn.execute('INSERT INTO books(title, uri, series_index, author_sort) VALUES (?, ?, ?, ?)',
(title, uri, series_index, aus))
obj = self.conn.execute('INSERT INTO books(title, series_index, author_sort) VALUES (?, ?, ?)',
(title, series_index, aus))
id = obj.lastrowid
self.data.books_added([id], self.conn)
ids.append(id)
@ -1251,12 +1309,11 @@ class LibraryDatabase2(LibraryDatabase):
paths = list(duplicate[0] for duplicate in duplicates)
formats = list(duplicate[1] for duplicate in duplicates)
metadata = list(duplicate[2] for duplicate in duplicates)
uris = list(duplicate[3] for duplicate in duplicates)
return (paths, formats, metadata, uris), len(ids)
return (paths, formats, metadata), len(ids)
return None, len(ids)
def import_book(self, mi, formats, notify=True):
series_index = 1 if mi.series_index is None else mi.series_index
series_index = 1.0 if mi.series_index is None else mi.series_index
if not mi.title:
mi.title = _('Unknown')
if not mi.authors:
@ -1266,8 +1323,8 @@ class LibraryDatabase2(LibraryDatabase):
aus = aus.decode(preferred_encoding, 'replace')
title = mi.title if isinstance(mi.title, unicode) else \
mi.title.decode(preferred_encoding, 'replace')
obj = self.conn.execute('INSERT INTO books(title, uri, series_index, author_sort) VALUES (?, ?, ?, ?)',
(title, None, series_index, aus))
obj = self.conn.execute('INSERT INTO books(title, series_index, author_sort) VALUES (?, ?, ?)',
(title, series_index, aus))
id = obj.lastrowid
self.data.books_added([id], self.conn)
self.set_path(id, True)
@ -1282,21 +1339,12 @@ class LibraryDatabase2(LibraryDatabase):
if notify:
self.notify('add', [id])
def move_library_to(self, newloc, progress=None):
header = _(u'<p>Copying books to %s<br><center>')%newloc
def move_library_to(self, newloc, progress=lambda x: x):
books = self.conn.get('SELECT id, path, title FROM books')
if progress is not None:
progress.setValue(0)
progress.setLabelText(header)
QCoreApplication.processEvents()
progress.setAutoReset(False)
progress.setRange(0, len(books))
if not os.path.exists(newloc):
os.makedirs(newloc)
old_dirs = set([])
for i, book in enumerate(books):
if progress is not None:
progress.setLabelText(header+_(u'Copying <b>%s</b>')%book[2])
path = book[1]
if not path:
continue
@ -1308,8 +1356,7 @@ class LibraryDatabase2(LibraryDatabase):
if os.path.exists(srcdir):
shutil.copytree(srcdir, tdir)
old_dirs.add(srcdir)
if progress is not None:
progress.setValue(i+1)
progress(book[2])
dbpath = os.path.join(newloc, os.path.basename(self.dbpath))
shutil.copyfile(self.dbpath, dbpath)
@ -1323,10 +1370,6 @@ class LibraryDatabase2(LibraryDatabase):
shutil.rmtree(dir)
except:
pass
if progress is not None:
progress.reset()
progress.hide()
def __iter__(self):
for record in self.data._data:
@ -1357,6 +1400,8 @@ class LibraryDatabase2(LibraryDatabase):
data.append(x)
x['id'] = record[FIELD_MAP['id']]
x['formats'] = []
if not x['authors']:
x['authors'] = _('Unknown')
x['authors'] = [i.replace('|', ',') for i in x['authors'].split(',')]
if authors_as_string:
x['authors'] = authors_to_string(x['authors'])
@ -1382,12 +1427,12 @@ class LibraryDatabase2(LibraryDatabase):
QCoreApplication.processEvents()
db.conn.row_factory = lambda cursor, row : tuple(row)
db.conn.text_factory = lambda x : unicode(x, 'utf-8', 'replace')
books = db.conn.get('SELECT id, title, sort, timestamp, uri, series_index, author_sort, isbn FROM books ORDER BY id ASC')
books = db.conn.get('SELECT id, title, sort, timestamp, series_index, author_sort, isbn FROM books ORDER BY id ASC')
progress.setAutoReset(False)
progress.setRange(0, len(books))
for book in books:
self.conn.execute('INSERT INTO books(id, title, sort, timestamp, uri, series_index, author_sort, isbn) VALUES(?, ?, ?, ?, ?, ?, ?, ?);', book)
self.conn.execute('INSERT INTO books(id, title, sort, timestamp, series_index, author_sort, isbn) VALUES(?, ?, ?, ?, ?, ?, ?, ?);', book)
tables = '''
authors ratings tags series books_tags_link

View File

@ -0,0 +1,63 @@
#!/usr/bin/env python
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
from __future__ import with_statement
__license__ = 'GPL v3'
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en'
import time, os
from threading import Thread
from Queue import Empty
from calibre.library.database2 import LibraryDatabase2
from calibre.utils.ipc.server import Server
from calibre.utils.ipc.job import ParallelJob
def move_library(from_, to, notification = lambda x:x):
time.sleep(1)
old = LibraryDatabase2(from_)
old.move_library_to(to, notification)
return True
class MoveLibrary(Thread):
def __init__(self, from_, to, count, result_queue):
Thread.__init__(self)
self.total = count
self.result_queue = result_queue
self.from_ = from_
self.to = to
self.count = 0
self.failed = False
self.details = None
def run(self):
job = ParallelJob('move_library',
'Move library from %s to %s'%(self.from_, self.to),
lambda x,y:x,
args=[self.from_, self.to])
server = Server(pool_size=1)
server.add_job(job)
while not job.is_finished:
time.sleep(0.2)
job.update(consume_notifications=False)
while True:
try:
title = job.notifications.get_nowait()[0]
self.count += 1
self.result_queue.put((float(self.count)/self.total, title))
except Empty:
break
job.update()
server.close()
if not job.result:
self.failed = True
self.details = job.details
if os.path.exists(job.log_path):
os.remove(job.log_path)

View File

@ -25,6 +25,7 @@ from calibre.library.database2 import LibraryDatabase2, FIELD_MAP
from calibre.utils.config import config_dir
from calibre.utils.mdns import publish as publish_zeroconf, \
stop_server as stop_zeroconf
from calibre.ebooks.metadata import fmt_sidx
build_time = datetime.strptime(build_time, '%d %m %Y %H%M%S')
server_resources['jquery.js'] = jquery
@ -271,7 +272,7 @@ class LibraryServer(object):
@expose
def stanza(self):
' Feeds to read calibre books on a ipod with stanza.'
'Feeds to read calibre books on a ipod with stanza.'
books = []
for record in iter(self.db):
r = record[FIELD_MAP['formats']]
@ -289,8 +290,8 @@ class LibraryServer(object):
extra.append('TAGS: %s<br />'%', '.join(tags.split(',')))
series = record[FIELD_MAP['series']]
if series:
extra.append('SERIES: %s [%d]<br />'%(series,
record[FIELD_MAP['series_index']]))
extra.append('SERIES: %s [%s]<br />'%(series,
fmt_sidx(record[FIELD_MAP['series_index']])))
fmt = 'epub' if 'EPUB' in r else 'pdb'
mimetype = guess_type('dummy.'+fmt)[0]
books.append(self.STANZA_ENTRY.generate(
@ -339,6 +340,7 @@ class LibraryServer(object):
for record in items[start:start+num]:
aus = record[2] if record[2] else __builtins__._('Unknown')
authors = '|'.join([i.replace('|', ',') for i in aus.split(',')])
r[10] = fmt_sidx(r[10])
books.append(book.generate(r=record, authors=authors).render('xml').decode('utf-8'))
updated = self.db.last_modified()

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -20,7 +20,6 @@ entry_points = {
'ebook-convert = calibre.ebooks.conversion.cli:main',
'markdown-calibre = calibre.ebooks.markdown.markdown:main',
'web2disk = calibre.web.fetch.simple:main',
'feeds2disk = calibre.web.feeds.main:main',
'calibre-server = calibre.library.server:main',
'lrf2lrs = calibre.ebooks.lrf.lrfparser:main',
'lrs2lrf = calibre.ebooks.lrf.lrs.convert_from:main',

View File

@ -9,8 +9,8 @@ DEPENDENCIES = [
('setuptools', '0.6c5', 'setuptools', 'python-setuptools', 'python-setuptools-devel'),
('Python Imaging Library', '1.1.6', 'imaging', 'python-imaging', 'python-imaging'),
('libusb', '0.1.12', None, None, None),
('Qt', '4.4.0', 'qt', 'libqt4-core libqt4-gui', 'qt4'),
('PyQt', '4.4.2', 'PyQt4', 'python-qt4', 'PyQt4'),
('Qt', '4.5.0', 'qt', 'libqt4-core libqt4-gui', 'qt4'),
('PyQt', '4.5.0', 'PyQt4', 'python-qt4', 'PyQt4'),
('python-mechanize', '0.1.11', 'dev-python/mechanize', 'python-mechanize', 'python-mechanize'),
('ImageMagick', '6.3.5', 'imagemagick', 'imagemagick', 'ImageMagick'),
('xdg-utils', '1.0.2', 'xdg-utils', 'xdg-utils', 'xdg-utils'),
@ -39,6 +39,7 @@ def get_linux_data(version='1.0.0'):
('debian', 'Debian Sid'),
('exherbo', 'Exherbo'),
('foresight', 'Foresight 2.1'),
('gentoo', 'Gentoo'),
('ubuntu', 'Ubuntu Jaunty Jackalope'),
('linux_mint', 'Linux Mint Gloria'),
]:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-16 07:10+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Arabic <ar@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "لا يفعل شيءً"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "لا يفعل شيءً"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -640,7 +640,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "دليل الخرج. الإفتراضي هو الدليل الحالي."
@ -655,7 +655,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "تم إنشاء كتاب OEB في"
@ -1646,11 +1646,11 @@ msgstr "الاستخدام: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "إنشاء ملف Mobipocket من EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3826,9 +3826,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "الأخبار"
@ -5661,20 +5661,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6118,6 +6118,7 @@ msgstr "الصربي"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6134,7 +6135,7 @@ msgstr "الصربي"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6218,15 +6219,18 @@ msgstr ""
msgid "Portugese"
msgstr "البرتغالي"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre 0.4.51\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2008-05-24 06:23+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: bg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
@ -63,7 +63,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -621,7 +621,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -636,7 +636,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1592,11 +1592,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3756,9 +3756,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5583,20 +5583,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6037,6 +6037,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6053,7 +6054,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6137,15 +6138,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -10,14 +10,14 @@ msgid ""
msgstr ""
"Project-Id-Version: ca\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 08:18+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:19+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -66,7 +66,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -97,15 +97,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -624,7 +624,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -639,7 +639,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1638,11 +1638,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3817,9 +3817,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5650,20 +5650,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6104,6 +6104,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6120,7 +6121,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6204,15 +6205,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 08:13+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:19+0000\n"
"Last-Translator: raduz <raduzator@gmail.com>\n"
"Language-Team: Czech <cs@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "Nedělá vůbec nic"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "Nedělá vůbec nic"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -698,7 +698,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LIT_soubor"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Výstupní adresář. Standardně je použit aktuální adresář."
@ -713,7 +713,7 @@ msgid "Useful for debugging."
msgstr "Užitečné pro ladění programu."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB kniha vytvořena v"
@ -1851,11 +1851,11 @@ msgstr "Použití: rb-meta soubor.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Vytvářím Mobipocket soubor z EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [možnosti] kniha.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Nezpracované MOBI HTML uložené do"
@ -4061,9 +4061,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5888,20 +5888,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6342,6 +6342,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6358,7 +6359,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6442,15 +6443,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-18 21:44+0000\n"
"Last-Translator: Martin Grønholdt <martin.groenholdt@gmail.com>\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-29 13:36+0000\n"
"Last-Translator: Clement Østergaard <Unknown>\n"
"Language-Team: Danish <da@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:29+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "Gør absolut ingenting"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "Gør absolut ingenting"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -712,7 +712,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [indstillinger] LITFIL"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Output-mappe. Standardværdien er den nuværende mappe."
@ -729,7 +729,7 @@ msgid "Useful for debugging."
msgstr "Brugbar for fejlsøgning"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB-e-bog oprettet i"
@ -1780,11 +1780,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3988,9 +3988,9 @@ msgstr "Tilføj en brugerdefineret nyhedskilde"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Nyheder"
@ -4161,20 +4161,20 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:50
msgid "Test email settings"
msgstr ""
msgstr "Test e-mail indstillinger"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:51
msgid "Send test mail from %s to:"
msgstr ""
msgstr "Send test e-mail fra %s til:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/test_email_ui.py:52
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:105
msgid "&Test"
msgstr ""
msgstr "&Test"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:62
msgid "No recipe selected"
msgstr ""
msgstr "Ingen opskrift valgt"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:68
msgid "The attached file: %s is a recipe to download %s."
@ -4182,7 +4182,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:69
msgid "Recipe for "
msgstr ""
msgstr "Opskrift for "
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:85
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:96
@ -4213,7 +4213,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:120
msgid "Already exists"
msgstr ""
msgstr "Eksisterer allerede"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:121
msgid "This feed has already been added to the recipe"
@ -5821,20 +5821,20 @@ msgstr ""
"komando er en af følgende:\n"
" %s\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Kopierer bøger til %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopierer <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Flytter gammel database til e-bogsbibliotek i %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Komprimerer database"
@ -6327,6 +6327,7 @@ msgstr "Serbisk"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6343,7 +6344,7 @@ msgstr "Serbisk"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6427,15 +6428,18 @@ msgstr "Bosnisk"
msgid "Portugese"
msgstr "Portugisisk"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Springer over duplikeret artikel: %s"

View File

@ -7,113 +7,17 @@ msgid ""
msgstr ""
"Project-Id-Version: de\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 18:42+0000\n"
"Last-Translator: S. Dorscht <Unknown>\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:21+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@lists.kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
" %prog options\n"
"\n"
" Calibre anpassen durch das Laden externer Plugins.\n"
" "
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Convert a HTML file to an EPUB ebook. Recursively follows links in the HTML "
"file.\n"
"If you specify an OPF file instead of an HTML file, the list of links is "
"takes from\n"
"the <spine> element of the OPF file.\n"
msgstr ""
"%prog [options] file.html|opf\n"
"\n"
"Konvertiert eine HTML Datei in ein EPUB eBook. Verfolgt Verknüpfungen in der "
"HTML Datei rekursiv.\n"
"Falls statt der HTML Datei eine OPF Datei angegeben wird, wird die Liste der "
"Verknüpfungen aus dem\n"
"<spine> Element der OPF Datei verwendet.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:982
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Follow all links in an HTML file and collect them into the specified "
"directory.\n"
"Also collects any resources like images, stylesheets, scripts, etc.\n"
"If an OPF file is specified instead, the list of files in its <spine> "
"element\n"
"is used.\n"
msgstr ""
"%prog [options] file.html|opf\n"
"\n"
"Folge allen Verweisen einer HTML Datei und sammle sie im angegebenen "
"Verzeichnis.\n"
"Sammelt auch alle Ressourcen wie Bilder, Stylesheets, Skripte, etc.\n"
"Falls hingegen eine OPF angegeben wurde, wird die Liste der Dateien in ihrem "
"<spine> Element\n"
"verwendet.\n"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:564
msgid "&Delete news from library when it is automatically sent to reader"
msgstr ""
"Nachrichten nach der automatischen Übertragung auf das Gerät aus der "
"Bibliothek &löschen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:391
msgid "Could not find cover for this book. Try specifying the ISBN first."
msgstr ""
"Konnte kein Umschlagbild für dieses Buch finden. Geben Sie zuerst die ISBN "
"an."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368
msgid "Download &cover"
msgstr "Ums&chlagbild laden"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167
msgid "Download all scheduled recipes at once"
msgstr "Alle geplanten Schemata auf einmal laden"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168
msgid "Download &all scheduled"
msgstr "&Alle geplanten laden"
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1641
msgid "Cannot Start "
msgstr "Start nicht möglich "
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1642
msgid "<p>%s is already running. %s</p>"
msgstr "<p>%s ist schon gestartet. %s</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:608
msgid ""
"%prog [options] file\n"
"\n"
"View an ebook.\n"
msgstr ""
"%prog [options] file\n"
"\n"
"Ein eBook anschauen.\n"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr "Chinesisch"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "Macht gar nix"
@ -160,7 +64,7 @@ msgstr "Macht gar nix"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -191,15 +95,15 @@ msgstr "Macht gar nix"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -294,6 +198,18 @@ msgstr "Kein gültiges Plugin gefunden in "
msgid "Initialization of plugin %s failed with traceback:"
msgstr "Staren des Plugins %s schlug fehl. Traceback:"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
" %prog options\n"
"\n"
" Calibre anpassen durch das Laden externer Plugins.\n"
" "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:275
msgid "Add a plugin by specifying the path to the zip file containing it."
msgstr ""
@ -671,6 +587,24 @@ msgstr ""
msgid "Could not find an ebook inside the archive"
msgstr "Konnte kein eBook im Archiv finden"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Convert a HTML file to an EPUB ebook. Recursively follows links in the HTML "
"file.\n"
"If you specify an OPF file instead of an HTML file, the list of links is "
"takes from\n"
"the <spine> element of the OPF file.\n"
msgstr ""
"%prog [options] file.html|opf\n"
"\n"
"Konvertiert eine HTML Datei in ein EPUB eBook. Verfolgt Verknüpfungen in der "
"HTML Datei rekursiv.\n"
"Falls statt der HTML Datei eine OPF Datei angegeben wird, wird die Liste der "
"Verknüpfungen aus dem\n"
"<spine> Element der OPF Datei verwendet.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:519
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/writer.py:758
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer.py:621
@ -795,6 +729,26 @@ msgstr ""
"Ausgabe HTML ist \"hübsch gedruckt\" zur einfacheren Analyse durch "
"menschliche Wesen"
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:982
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Follow all links in an HTML file and collect them into the specified "
"directory.\n"
"Also collects any resources like images, stylesheets, scripts, etc.\n"
"If an OPF file is specified instead, the list of files in its <spine> "
"element\n"
"is used.\n"
msgstr ""
"%prog [options] file.html|opf\n"
"\n"
"Folge allen Verweisen einer HTML Datei und sammle sie im angegebenen "
"Verzeichnis.\n"
"Sammelt auch alle Ressourcen wie Bilder, Stylesheets, Skripte, etc.\n"
"Falls hingegen eine OPF angegeben wurde, wird die Liste der Dateien in ihrem "
"<spine> Element\n"
"verwendet.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/from_any.py:47
msgid "Creating LIT file from EPUB..."
msgstr "Erstelle LIT Datei aus EPUB..."
@ -804,7 +758,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Ausgabeverzeichnis. Voreinstellung ist aktuelles Verzeichnis."
@ -821,7 +775,7 @@ msgid "Useful for debugging."
msgstr "Hilfreich bei der Fehlersuche."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB eBook erstellt in"
@ -1991,11 +1945,11 @@ msgstr "Benutzung: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Erstelle Mobipocket Datei aus EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] dateiname.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Original MOBI HTML gespeichert in"
@ -2946,6 +2900,12 @@ msgstr "Zeige Cover-Ansicht in einem eigenen Fenster (erfordert Neustart)"
msgid "Automatically send downloaded &news to ebook reader"
msgstr "Geladene &Nachrichten automatisch an das Gerät senden"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:564
msgid "&Delete news from library when it is automatically sent to reader"
msgstr ""
"Nachrichten nach der automatischen Übertragung auf das Gerät aus der "
"Bibliothek &löschen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:565
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
@ -4132,6 +4092,12 @@ msgstr "<b>Konnte kein Umschlagbild abrufen.</b><br/>"
msgid "The download timed out."
msgstr "Der Download timed out."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:391
msgid "Could not find cover for this book. Try specifying the ISBN first."
msgstr ""
"Konnte kein Umschlagbild für dieses Buch finden. Geben Sie zuerst die ISBN "
"an."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:403
msgid "Bad cover"
msgstr "Falsches Umschlagbild"
@ -4195,6 +4161,10 @@ msgstr "Umschlagbild des Buches aus dem gewählten Format festlegen"
msgid "Reset cover to default"
msgstr "Umschlagbild auf Voreinstellung zurücksetzen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368
msgid "Download &cover"
msgstr "Ums&chlagbild laden"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:56
msgid "Password needed"
msgstr "Passwort erforderlich"
@ -4295,9 +4265,9 @@ msgstr "Neue individuelle Nachrichtenquelle hinzufügen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Nachrichten"
@ -4306,6 +4276,14 @@ msgstr "Nachrichten"
msgid "Recipes"
msgstr "Downloadschemata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167
msgid "Download all scheduled recipes at once"
msgstr "Alle geplanten Schemata auf einmal laden"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168
msgid "Download &all scheduled"
msgstr "&Alle geplanten laden"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:169
msgid "Schedule for download"
msgstr "Zeitplanung des Downloads"
@ -5443,6 +5421,14 @@ msgstr "Minimiert im Systembereich der Kontrollleiste starten."
msgid "Log debugging information to console"
msgstr "Informationen zur Fehlersuche in Konsole aufzeichnen"
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1641
msgid "Cannot Start "
msgstr "Start nicht möglich "
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1642
msgid "<p>%s is already running. %s</p>"
msgstr "<p>%s ist schon gestartet. %s</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:335
msgid "calibre"
msgstr "calibre"
@ -5883,6 +5869,16 @@ msgstr ""
"Falls angegeben, dann wird das Viewer Fenster beim Start im Vordergrund "
"angezeigt."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:608
msgid ""
"%prog [options] file\n"
"\n"
"View an ebook.\n"
msgstr ""
"%prog [options] file\n"
"\n"
"Ein eBook anschauen.\n"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:152
msgid "Ebook Viewer"
msgstr "eBook Viewer"
@ -6324,20 +6320,20 @@ msgstr ""
"\n"
"Sie erhalten Hilfe zu einem bestimmten Befehl mit: %%prog command --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Kopiere Bücher nach %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopiere <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Migriere alte Datenbank zu eBook Bibliothek in %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Komprimiere Datenbank"
@ -6840,6 +6836,7 @@ msgstr "Serbisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6856,7 +6853,7 @@ msgstr "Serbisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6940,15 +6937,18 @@ msgstr "Bosnisch"
msgid "Portugese"
msgstr "Portugisisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr "Ungarisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Überspringe doppelten Artikel: %s"
@ -6957,6 +6957,10 @@ msgstr "Überspringe doppelten Artikel: %s"
msgid "Skipping filtered article: %s"
msgstr "Überspringe gefilterten Artikel: %s"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr "Chinesisch"
#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:457
msgid ""
"%prog URL\n"

View File

@ -7,16 +7,20 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 09:29+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:22+0000\n"
"Last-Translator: Thanos Petkakis <thanospet@gmail.com>\n"
"Language-Team: Greek <el@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:44
#: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:98
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:50
@ -59,7 +63,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -90,15 +94,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -106,25 +110,6 @@ msgstr ""
msgid "Unknown"
msgstr "Άγνωστο"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:89
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:302
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:113
msgid "Publisher"
msgstr "Εκδότης"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:110
msgid "Add a header to all the pages with title and author."
msgstr "Προσθήκη επικεφαλίδας σε όλες τις σελίδες με τίτλο και συγγραφέα"
#: /home/kovid/work/calibre/src/calibre/utils/config.py:81
msgid "Created by "
msgstr "Δημιουργήθηκε απο τον "
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:62
msgid "Base"
msgstr ""
@ -636,7 +621,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -651,7 +636,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -691,6 +676,13 @@ msgstr ""
msgid "Sort key for the author"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:89
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:302
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:58
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:113
msgid "Publisher"
msgstr "Εκδότης"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:91
msgid "Path to file containing image to be used as cover"
msgstr ""
@ -731,6 +723,10 @@ msgstr ""
msgid "Separate paragraphs by blank lines."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:110
msgid "Add a header to all the pages with title and author."
msgstr "Προσθήκη επικεφαλίδας σε όλες τις σελίδες με τίτλο και συγγραφέα"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:112
msgid ""
"Set the format of the header. %a is replaced by the author and %t by the "
@ -1596,11 +1592,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3760,9 +3756,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5587,20 +5583,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -5627,6 +5623,10 @@ msgstr ""
msgid "%sUsage%s: %s\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/utils/config.py:81
msgid "Created by "
msgstr "Δημιουργήθηκε απο τον "
#: /home/kovid/work/calibre/src/calibre/utils/config.py:536
msgid "Path to the database in which books are stored"
msgstr ""
@ -6037,6 +6037,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6053,7 +6054,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6137,15 +6138,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -10,103 +10,16 @@ msgid ""
msgstr ""
"Project-Id-Version: es\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-18 21:04+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:23+0000\n"
"Last-Translator: DiegoJ <diegojromerolopez@gmail.com>\n"
"Language-Team: Spanish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
" %prog opciones\n"
"\n"
" Personalizar calibre cargando complementos externos.\n"
" "
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Convert a HTML file to an EPUB ebook. Recursively follows links in the HTML "
"file.\n"
"If you specify an OPF file instead of an HTML file, the list of links is "
"takes from\n"
"the <spine> element of the OPF file.\n"
msgstr ""
"%prog [opciones] file.html|opf\n"
"\n"
"Convierte un archvio HTML a un libro electrónico en formato EPUB. Sigue los\n"
"enlaces recursivamente en el archivo HTML. Si especifica un archivo OPF en\n"
"vez de un archivo HTML, la lista de enlaces obtiene la lista de enlaces del\n"
"elemento <spine> del archivo OPF.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:982
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Follow all links in an HTML file and collect them into the specified "
"directory.\n"
"Also collects any resources like images, stylesheets, scripts, etc.\n"
"If an OPF file is specified instead, the list of files in its <spine> "
"element\n"
"is used.\n"
msgstr ""
"%prog [opciones] archivo.html|opf\n"
"\n"
"Sigue todos los enlaces en un archivo HTML y los guarda en el directorio "
"especificado.\n"
"También guarda todos los recursos como imágenes, hojas de estilo, scripts, "
"etc.\n"
"Si se trata de un archivo OPF, se usa la lista de archivos en su\n"
"elemento <spine>.\n"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:564
msgid "&Delete news from library when it is automatically sent to reader"
msgstr ""
"&Eliminar noticias de la biblioteca cuando se hayan enviado automáticamente "
"al lector."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:391
msgid "Could not find cover for this book. Try specifying the ISBN first."
msgstr ""
"No se pudo encontrar la portada de este libro. Inténtelo de nuevo "
"especificando primero el ISBN."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368
msgid "Download &cover"
msgstr "Des&carga portada"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167
msgid "Download all scheduled recipes at once"
msgstr "Descarga todas las recetas planificadas de una vez"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168
msgid "Download &all scheduled"
msgstr "Descarga &todas las planificadas"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:608
msgid ""
"%prog [options] file\n"
"\n"
"View an ebook.\n"
msgstr ""
"%prog [opciones] archivo\n"
"\n"
"Ver un libro electrónico.\n"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr "Chino"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "No hace nada en absoluto"
@ -153,7 +66,7 @@ msgstr "No hace nada en absoluto"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -184,15 +97,15 @@ msgstr "No hace nada en absoluto"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -288,6 +201,18 @@ msgid "Initialization of plugin %s failed with traceback:"
msgstr ""
"La inicialización del complemento %s falló y generó la siguiente traza:"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
" %prog opciones\n"
"\n"
" Personalizar calibre cargando complementos externos.\n"
" "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:275
msgid "Add a plugin by specifying the path to the zip file containing it."
msgstr ""
@ -655,6 +580,23 @@ msgstr ""
msgid "Could not find an ebook inside the archive"
msgstr "No se pudo encontrar un libro-e dentro del archivo"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Convert a HTML file to an EPUB ebook. Recursively follows links in the HTML "
"file.\n"
"If you specify an OPF file instead of an HTML file, the list of links is "
"takes from\n"
"the <spine> element of the OPF file.\n"
msgstr ""
"%prog [opciones] file.html|opf\n"
"\n"
"Convierte un archvio HTML a un libro electrónico en formato EPUB. Sigue los\n"
"enlaces recursivamente en el archivo HTML. Si especifica un archivo OPF en\n"
"vez de un archivo HTML, la lista de enlaces obtiene la lista de enlaces del\n"
"elemento <spine> del archivo OPF.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:519
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/writer.py:758
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer.py:621
@ -779,6 +721,26 @@ msgstr ""
"El HTML de salida está bien escrito para que sea más fácil de entender por "
"humanos."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:982
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Follow all links in an HTML file and collect them into the specified "
"directory.\n"
"Also collects any resources like images, stylesheets, scripts, etc.\n"
"If an OPF file is specified instead, the list of files in its <spine> "
"element\n"
"is used.\n"
msgstr ""
"%prog [opciones] archivo.html|opf\n"
"\n"
"Sigue todos los enlaces en un archivo HTML y los guarda en el directorio "
"especificado.\n"
"También guarda todos los recursos como imágenes, hojas de estilo, scripts, "
"etc.\n"
"Si se trata de un archivo OPF, se usa la lista de archivos en su\n"
"elemento <spine>.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/from_any.py:47
msgid "Creating LIT file from EPUB..."
msgstr "Creando archivo LIT de EPUB..."
@ -788,7 +750,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Directorio de salida. Por defecto es el directorio actual"
@ -805,7 +767,7 @@ msgid "Useful for debugging."
msgstr "Útil para depuración."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "Libro-e OEB creado en"
@ -1960,11 +1922,11 @@ msgstr "Uso: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Creando archivo Mobipocket de un EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [opciones] milibroe.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "HTML MOBI en bruto guardado en"
@ -2908,6 +2870,12 @@ msgstr ""
msgid "Automatically send downloaded &news to ebook reader"
msgstr "Enviar &noticias descargadas automáticamente al lector de libros-e"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:564
msgid "&Delete news from library when it is automatically sent to reader"
msgstr ""
"&Eliminar noticias de la biblioteca cuando se hayan enviado automáticamente "
"al lector."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:565
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
@ -4080,6 +4048,12 @@ msgstr "<b>No se puede descargar la portada.</b><br/>"
msgid "The download timed out."
msgstr "El tiempo de descarga ha vencido."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:391
msgid "Could not find cover for this book. Try specifying the ISBN first."
msgstr ""
"No se pudo encontrar la portada de este libro. Inténtelo de nuevo "
"especificando primero el ISBN."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:403
msgid "Bad cover"
msgstr "Portada mala"
@ -4146,6 +4120,10 @@ msgstr "Asignar la portada del libro del formato seleccionado"
msgid "Reset cover to default"
msgstr "Reiniciar portada a la de por defecto"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368
msgid "Download &cover"
msgstr "Des&carga portada"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:56
msgid "Password needed"
msgstr "Se necesita contraseña."
@ -4246,9 +4224,9 @@ msgstr "Añadir nueva fuente de noticias"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Noticias"
@ -4257,6 +4235,14 @@ msgstr "Noticias"
msgid "Recipes"
msgstr "Recetas"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167
msgid "Download all scheduled recipes at once"
msgstr "Descarga todas las recetas planificadas de una vez"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168
msgid "Download &all scheduled"
msgstr "Descarga &todas las planificadas"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:169
msgid "Schedule for download"
msgstr "Plan de descarga"
@ -5837,6 +5823,16 @@ msgstr ""
"Si está especificada, la ventana del visor intentará situarse en el frente "
"cuando se inicie el programa."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:608
msgid ""
"%prog [options] file\n"
"\n"
"View an ebook.\n"
msgstr ""
"%prog [opciones] archivo\n"
"\n"
"Ver un libro electrónico.\n"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:152
msgid "Ebook Viewer"
msgstr "Visor de libros-e"
@ -6280,21 +6276,21 @@ msgstr ""
"\n"
"Para ver la ayuda a cada orden ejecuta: %%prog orden --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Copiando libros a %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Copiando <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
"<p>Migrando base de datos antigua a biblioteca de libros-e en %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Compactando base de datos"
@ -6798,6 +6794,7 @@ msgstr "Serbio"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6814,7 +6811,7 @@ msgstr "Serbio"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6898,15 +6895,18 @@ msgstr "Bosnio"
msgid "Portugese"
msgstr "Portugués"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr "Húngaro"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Ignorando artículo duplicado: %s"
@ -6915,6 +6915,10 @@ msgstr "Ignorando artículo duplicado: %s"
msgid "Skipping filtered article: %s"
msgstr "Ignorando artículo filtrado: %s"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr "Chino"
#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:457
msgid ""
"%prog URL\n"

View File

@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre 0.4.22\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-16 09:29+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
@ -577,7 +577,7 @@ msgstr "Ne fait strictement rien"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -608,15 +608,15 @@ msgstr "Ne fait strictement rien"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -1211,7 +1211,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] FichierLit"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Dossier de récupération. Par défaut, il s'agit du dossier actuel."
@ -1227,7 +1227,7 @@ msgid "Useful for debugging."
msgstr "Utile pour déboguer"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "ebook OEB créé dans"
@ -2371,11 +2371,11 @@ msgstr "Utilisation: rb-meta fichier.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Créé le fichier Mobipocket à partir de l'EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] myebook.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "HTML MOBI brut sauvegardé dans"
@ -4598,9 +4598,9 @@ msgstr "Ajouter une source personnalisée de News"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Informations"
@ -6587,20 +6587,20 @@ msgstr ""
"\n"
"Pour une aide sur commande précise: %%prog commande --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Copie les livres vers %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Copie <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Migre l'ancienne base vers la librairie dans %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Compacte la base"
@ -7101,6 +7101,7 @@ msgstr "Serbe"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -7117,7 +7118,7 @@ msgstr "Serbe"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -7201,15 +7202,18 @@ msgstr "Bosniaque"
msgid "Portugese"
msgstr "Portuguais"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr "Hongrois"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Saute l'article dupliqué: %s"

View File

@ -7,53 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 09:28+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:24+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Galician <gl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:41
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:394
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:72
msgid "The reader has no storage card connected."
msgstr "O lector non ten conectada tarxeta de almacenamento ningunha"
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:140
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:168
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:196
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:204
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:251
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:278
msgid "Unable to detect the %s disk drive. Try rebooting."
msgstr "Non se puido detectar a unidade de disco %s. Probe a reiniciar."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:94
msgid "Options to control the conversion to EPUB"
msgstr "Opcións para controlar a conversión a EPUB"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:105
msgid ""
"The output EPUB file. If not specified, it is derived from the input file "
"name."
msgstr ""
"Se non se especifica o ficheiro EPUB de saída empregarase o mesmo nome do "
"ficheiro de entrada."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:108
msgid ""
"Profile of the target device this EPUB is meant for. Set to None to create a "
"device independent EPUB. The profile is used for device specific "
"restrictions on the EPUB. Choices are: "
msgstr ""
"O perfil do dispositivo de destino ao que se refire o EPUB. Escolla Ningún "
"para crear un EPUB independente do dispositivo. O perfil úsase para "
"establcer restricións específicas no EPUB. As opcións son: "
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr ""
@ -100,7 +63,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -131,15 +94,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -265,6 +228,12 @@ msgstr ""
msgid "Disable the named plugin"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:41
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:394
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:72
msgid "The reader has no storage card connected."
msgstr "O lector non ten conectada tarxeta de almacenamento ningunha"
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:60
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:91
msgid "There is insufficient free space on the storage card"
@ -275,6 +244,37 @@ msgstr ""
msgid "There is insufficient free space in main memory"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:140
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:168
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:196
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:204
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:251
#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:278
msgid "Unable to detect the %s disk drive. Try rebooting."
msgstr "Non se puido detectar a unidade de disco %s. Probe a reiniciar."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:94
msgid "Options to control the conversion to EPUB"
msgstr "Opcións para controlar a conversión a EPUB"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:105
msgid ""
"The output EPUB file. If not specified, it is derived from the input file "
"name."
msgstr ""
"Se non se especifica o ficheiro EPUB de saída empregarase o mesmo nome do "
"ficheiro de entrada."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:108
msgid ""
"Profile of the target device this EPUB is meant for. Set to None to create a "
"device independent EPUB. The profile is used for device specific "
"restrictions on the EPUB. Choices are: "
msgstr ""
"O perfil do dispositivo de destino ao que se refire o EPUB. Escolla Ningún "
"para crear un EPUB independente do dispositivo. O perfil úsase para "
"establcer restricións específicas no EPUB. As opcións son: "
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:113
msgid ""
"Either the path to a CSS stylesheet or raw CSS. This CSS will override any "
@ -626,7 +626,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -641,7 +641,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1597,11 +1597,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3761,9 +3761,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5588,20 +5588,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6042,6 +6042,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6058,7 +6059,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6142,15 +6143,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 07:40+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:24+0000\n"
"Last-Translator: nikitajy <nikitajy@gmail.com>\n"
"Language-Team: Hebrew <he@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "לא עושה דבר"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "לא עושה דבר"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -118,6 +118,14 @@ msgstr "בסיס"
msgid "File type"
msgstr "סוג קובץ"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:182
msgid "Metadata reader"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:209
msgid "Metadata writer"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:12
msgid ""
"Follow all local links in an HTML file and create a ZIP file containing all "
@ -127,26 +135,6 @@ msgstr ""
"עקוב אחר כל הקישורים המקומיים בקובץ HTML וצור קובץ ZIP המכיל את כל הקבצים "
"המקושרים. תוסף זה רץ בכל פעם שמתווסף קובץ HTML לספרייה."
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "תוספים מותקנים"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:31
msgid "Disabled plugins"
msgstr "תוספים מבוטלים"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:73
msgid "No valid plugin found in "
msgstr "לא נמצאו תוספים תקינים ב- "
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:182
msgid "Metadata reader"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:209
msgid "Metadata writer"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:32
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:43
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:53
@ -184,6 +172,10 @@ msgstr ""
msgid "Set metadata in %s files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "תוספים מותקנים"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr ""
@ -192,6 +184,14 @@ msgstr ""
msgid "Local plugin customization"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:31
msgid "Disabled plugins"
msgstr "תוספים מבוטלים"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:73
msgid "No valid plugin found in "
msgstr "לא נמצאו תוספים תקינים ב- "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:192
msgid "Initialization of plugin %s failed with traceback:"
msgstr ""
@ -623,7 +623,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -638,7 +638,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1594,11 +1594,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3758,9 +3758,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5585,20 +5585,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6039,6 +6039,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6055,7 +6056,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6139,15 +6140,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,106 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-17 02:24+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:25+0000\n"
"Last-Translator: Miro Glavić <glavicmiro@gmail.com>\n"
"Language-Team: Croatian <hr@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
" %prog opcije\n"
"\n"
" Prilagodi calibre učitavanjem vanjskih priključaka.\n"
" "
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Convert a HTML file to an EPUB ebook. Recursively follows links in the HTML "
"file.\n"
"If you specify an OPF file instead of an HTML file, the list of links is "
"takes from\n"
"the <spine> element of the OPF file.\n"
msgstr ""
"%prog [opcije] datoteka.html|opf\n"
"\n"
"Pretvori HTML datoteku u EPUB elektroničku knjigu. Suvratno prati veze u "
"HTML datoteci.\n"
"Ako specificirate OPF datoteku umjesto HTML datoteke, lista veza je uzeta iz "
"<spine> \n"
"elementa OPF datoteke.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:982
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Follow all links in an HTML file and collect them into the specified "
"directory.\n"
"Also collects any resources like images, stylesheets, scripts, etc.\n"
"If an OPF file is specified instead, the list of files in its <spine> "
"element\n"
"is used.\n"
msgstr ""
"%prog [options] file.html|opf\n"
"\n"
"Pratii sve veze u HTML datoteci i prikupi ih u specificiranom direktoriju.\n"
"Ovo također prikuplja sve resurse kao slike, stilske liste, skripte itd.\n"
"Ako je OPF datoteka specificirana umjesto ove, lista datoteka u njenom \n"
"<spine> elementu je upotrijebljena.\n"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:564
msgid "&Delete news from library when it is automatically sent to reader"
msgstr "&Izbriši vijesti iz biblioteke kad su automatski poslane čitaču."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:391
msgid "Could not find cover for this book. Try specifying the ISBN first."
msgstr "Omot za ovu knjigu nije pronađen. Pokušajte prvo specificirati ISBN."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368
msgid "Download &cover"
msgstr "Preuzmi &omot"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167
msgid "Download all scheduled recipes at once"
msgstr "Preuzmi sve predviđene recepte odjednom"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168
msgid "Download &all scheduled"
msgstr "Preuzmi &sve predviđeno"
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1641
msgid "Cannot Start "
msgstr "Ne može Krenuti "
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1642
msgid "<p>%s is already running. %s</p>"
msgstr "<p>%s je već aktivan. %s</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:608
msgid ""
"%prog [options] file\n"
"\n"
"View an ebook.\n"
msgstr ""
"%prog [opcije] datoteka\n"
"\n"
"Pogledaj elektroničku knjigu.\n"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr "Kineski"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "Uopće ne funkcionira"
@ -153,7 +63,7 @@ msgstr "Uopće ne funkcionira"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -184,15 +94,15 @@ msgstr "Uopće ne funkcionira"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -287,6 +197,18 @@ msgstr "Nije pronađen važeći priključak u "
msgid "Initialization of plugin %s failed with traceback:"
msgstr "Inicijalizacija priključka %s je neuspjela sa praćenjem unazad:"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
" %prog opcije\n"
"\n"
" Prilagodi calibre učitavanjem vanjskih priključaka.\n"
" "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:275
msgid "Add a plugin by specifying the path to the zip file containing it."
msgstr ""
@ -649,6 +571,24 @@ msgstr ""
msgid "Could not find an ebook inside the archive"
msgstr "Nije pronađena elektronička knjiga u arhivi"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Convert a HTML file to an EPUB ebook. Recursively follows links in the HTML "
"file.\n"
"If you specify an OPF file instead of an HTML file, the list of links is "
"takes from\n"
"the <spine> element of the OPF file.\n"
msgstr ""
"%prog [opcije] datoteka.html|opf\n"
"\n"
"Pretvori HTML datoteku u EPUB elektroničku knjigu. Suvratno prati veze u "
"HTML datoteci.\n"
"Ako specificirate OPF datoteku umjesto HTML datoteke, lista veza je uzeta iz "
"<spine> \n"
"elementa OPF datoteke.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:519
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/writer.py:758
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer.py:621
@ -769,6 +709,24 @@ msgstr ""
msgid "Output HTML is \"pretty printed\" for easier parsing by humans"
msgstr "Izlazni HTML je \"lijepo ispisan\" za lakše analiziranje sintakse"
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:982
msgid ""
"%prog [options] file.html|opf\n"
"\n"
"Follow all links in an HTML file and collect them into the specified "
"directory.\n"
"Also collects any resources like images, stylesheets, scripts, etc.\n"
"If an OPF file is specified instead, the list of files in its <spine> "
"element\n"
"is used.\n"
msgstr ""
"%prog [options] file.html|opf\n"
"\n"
"Pratii sve veze u HTML datoteci i prikupi ih u specificiranom direktoriju.\n"
"Ovo također prikuplja sve resurse kao slike, stilske liste, skripte itd.\n"
"Ako je OPF datoteka specificirana umjesto ove, lista datoteka u njenom \n"
"<spine> elementu je upotrijebljena.\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/from_any.py:47
msgid "Creating LIT file from EPUB..."
msgstr "Kreiranje LIT datoteke iz EPUB..."
@ -778,7 +736,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [opcije] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Izlazni direktorij. Podrazumijeva se kao aktivni direktorij."
@ -795,7 +753,7 @@ msgid "Useful for debugging."
msgstr "Korisno za otkrivanje grešaka."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB elektronička knjiga kreirana u"
@ -1936,11 +1894,11 @@ msgstr "Korištenje: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Kreiranje Mobipocket datoteke iz EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] myebook.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Sirov MOBI HTML pohranjen u"
@ -2872,6 +2830,10 @@ msgstr ""
msgid "Automatically send downloaded &news to ebook reader"
msgstr "Automatski pošalji skinute &vijesti na čitača elektroničke knjige"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:564
msgid "&Delete news from library when it is automatically sent to reader"
msgstr "&Izbriši vijesti iz biblioteke kad su automatski poslane čitaču."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:565
msgid "&Number of covers to show in browse mode (needs restart):"
msgstr ""
@ -4040,6 +4002,10 @@ msgstr "<b>Nemoguće ugrabiti omot.</b><br/>"
msgid "The download timed out."
msgstr "Vrijeme skidanja isteklo."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:391
msgid "Could not find cover for this book. Try specifying the ISBN first."
msgstr "Omot za ovu knjigu nije pronađen. Pokušajte prvo specificirati ISBN."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:403
msgid "Bad cover"
msgstr "Loš omot"
@ -4102,6 +4068,10 @@ msgstr "Postavi omot za knjigu iz odabranog formata"
msgid "Reset cover to default"
msgstr "Vrati omot u zadano stanje"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368
msgid "Download &cover"
msgstr "Preuzmi &omot"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:56
msgid "Password needed"
msgstr "Potrebna lozinka"
@ -4202,9 +4172,9 @@ msgstr "Dodaj izvor prilagođenih vijesti"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Vijesti"
@ -4213,6 +4183,14 @@ msgstr "Vijesti"
msgid "Recipes"
msgstr "Recepti"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167
msgid "Download all scheduled recipes at once"
msgstr "Preuzmi sve predviđene recepte odjednom"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168
msgid "Download &all scheduled"
msgstr "Preuzmi &sve predviđeno"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:169
msgid "Schedule for download"
msgstr "Plan skidanja"
@ -5339,6 +5317,14 @@ msgstr "Pokretanje minimizirano na sustavni poslužavnik."
msgid "Log debugging information to console"
msgstr "Ubilježi informacije o uklanjanju grašaka u konzolu."
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1641
msgid "Cannot Start "
msgstr "Ne može Krenuti "
#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1642
msgid "<p>%s is already running. %s</p>"
msgstr "<p>%s je već aktivan. %s</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:335
msgid "calibre"
msgstr "calibre"
@ -5777,6 +5763,16 @@ msgstr ""
"Ako je naznačeno, kod pokretanj će preglednički prozor pokušati da dođe "
"ispred."
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:608
msgid ""
"%prog [options] file\n"
"\n"
"View an ebook.\n"
msgstr ""
"%prog [opcije] datoteka\n"
"\n"
"Pogledaj elektroničku knjigu.\n"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:152
msgid "Ebook Viewer"
msgstr "Preglednik Elektroničke Knjige"
@ -6204,21 +6200,21 @@ msgstr ""
"\n"
"For help on an individual command: %%prog command --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Kopiranje knjiga u %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopiranje <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
"<p>Preseljavanje stare baze podataka na ebook biblioteku u %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Sažimanje baze podataka"
@ -6711,6 +6707,7 @@ msgstr "Srpski"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6727,7 +6724,7 @@ msgstr "Srpski"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6811,15 +6808,18 @@ msgstr "Bosanski"
msgid "Portugese"
msgstr "Portugalski"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr "Mađarski"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Preskakanje dupliciranog artikla: %s"
@ -6828,6 +6828,10 @@ msgstr "Preskakanje dupliciranog artikla: %s"
msgid "Skipping filtered article: %s"
msgstr "Preskakanje filtriranog artikla: %s"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr "Kineski"
#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:457
msgid ""
"%prog URL\n"

View File

@ -7,349 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-20 03:20+0000\n"
"Last-Translator: Levente Szileszky <szlevi@gmail.com>\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:27+0000\n"
"Last-Translator: Molnár Gábor <csirkus@gmail.com>\n"
"Language-Team: Hungarian <hu@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr "Metaadatok beállítása a %s típusú fájlokban."
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr "A fájltípus beépülőmodulok leképezése"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:145
msgid ""
"Remove the first image from the input ebook. Useful if the first image in "
"the source file is a cover and you are specifying an external cover."
msgstr ""
"Vegye ki az első képet a bemeneti e-könyvből. Ez akkor hasznos, ha az első "
"kép a fájlban a könyvborító, és te helyette másik borítót szeretnél "
"használni."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:157
msgid ""
"XPath expression to detect page boundaries for building a custom pagination "
"map, as used by AdobeDE. Default is not to build an explicit pagination map."
msgstr ""
"XPath kifejezés az oldalhatárok észlelésére a saját lapozási táblázat "
"elkészítéséhez (az Adobe DE használja). Alapértelmezés szerint nem készítünk "
"lapozási táblázatot."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:188
msgid ""
"XPath expression that specifies all tags that should be added to the Table "
"of Contents at level three. Each entry is added under the previous level two "
"entry."
msgstr ""
"XPath kifejezés, amely meghatározza az összes tag-et, amit hozzá lehet adni "
"a Tartalomjegyzék harmadik szintjéhez. Minden bejegyzés az előző szintű "
"(második) bejegyzés alá kerül."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:202
msgid "Control page layout"
msgstr "Kontroláld az oldalelrendezést"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:215
msgid ""
"Remove spacing between paragraphs. Also sets a indent on paragraphs of "
"1.5em. You can override this by adding p {text-indent: 0cm} to --override-"
"css. Spacing removal will not work if the source file forces inter-paragraph "
"spacing."
msgstr ""
"Közök eltávolítása a szövegtömbből. Ez a beállítás automatikusan 1.5em "
"méretű behúzást állít be a bekezdéshez. Ezt felül tudod írni, ha az --"
"override-css kapcsolónak a p {text-indent: 0cm} paramétert adod meg. Ez nem "
"fog működni, ha az eredeti fájlban kényszerített elrendezés van."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr "A kimenetben a szöveg ne legyen mindenképpen sorkizárt."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:223
msgid ""
"Remove table markup, converting it into paragraphs. This is useful if your "
"source file uses a table to manage layout."
msgstr ""
"Távolíts el a táblázatot és alakítsd át azt bekezdésekké.\r\n"
"Ez akkor hasznos, ha a forrás táblázatot használ az elrendezés kezelésére."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:226
msgid ""
"Preserve the HTML tag structure while splitting large HTML files. This is "
"only neccessary if the HTML files contain CSS that uses sibling selectors. "
"Enabling this greatly slows down processing of large HTML files."
msgstr ""
"Nagy HTML fájlok tag struktúrájának megőrzése darabolás közben. Erre csak "
"akkor van szükség, ha a HTML olyan CSS-t tartalmaz, ami 'sibling' típusú "
"selectorokat is használ. Ez az opció jelentősen lelassíthatja nagy fájlok "
"feldolgozását."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/split.py:30
msgid ""
"Could not find reasonable point at which to split: %s Sub-tree size: %d KB"
msgstr ""
"Nem találtam egyértelmű elválasztási pontokat, ahol darabolni lehetne: %s Az "
"fa mérete: %d kB."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/split.py:149
msgid ""
"\t\tToo much markup. Re-splitting without structure preservation. This may "
"cause incorrect rendering."
msgstr ""
"\t\tTúl sok formázás. Újradarabolom a szerkezet megőrzése nélkül. Ez "
"helytelen megjelenést eredményezhet."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:962
msgid "The author(s) of the ebook, as a & separated list."
msgstr "A könyv szerzői '&' jelekkel elválasztott listában megadva."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:229
msgid "Failed %s"
msgstr "Elkútruk! %s"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:280
msgid ""
"Failed to process comic: %s\n"
"\n"
"%s"
msgstr ""
"Elkúrtuk a képregény feldolgozását! :\n"
"%s\n"
"\n"
"%s"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:302
msgid ""
"Disable normalize (improve contrast) color range for pictures. Default: False"
msgstr ""
"Normalizállás mellőzése az élénk szinű képeknél (növeli a kontrasztot). "
"Alapértelmezett: hamis"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:304
msgid "Maintain picture aspect ratio. Default is to fill the screen."
msgstr "A képméretarány megtartása. Alapértelmezett: kijelző kitőltése"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:313
msgid ""
"Keep aspect ratio and scale image using screen height as image width for "
"viewing in landscape mode."
msgstr ""
"Képméretarány megtartása és a képméret növelése növelése, tájképmódban lesz "
"látható."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:315
msgid ""
"Used for right-to-left publications like manga. Causes landscape pages to be "
"split into portrait pages from right to left."
msgstr ""
"Jobbról balra haladó kiadványoknál (pl. Manga) portréoldalakba hasítás "
"jobbról balra."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:44
msgid "Fetching of recipe failed: "
msgstr "Az újság letölése nem sikerült: "
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:321
msgid "\tBook Designer file detected."
msgstr "\tBook Designer fájl található."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:346
msgid "\tBaen file detected. Re-parsing..."
msgstr "\tBaen fájl található. Újraelemzés..."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:362
msgid "Written preprocessed HTML to "
msgstr "Az előre feldolgozott HTML kiírása ide: "
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:139
msgid "Do not save embedded image and font files to disk"
msgstr "Ne mentse el a beágyazott képet és betűtípusfájlokat a lemezre"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:607
msgid "Set the book classification"
msgstr "A könybesorolás beálítása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:608
msgid "Set the book creator"
msgstr "A szerző beálítása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:609
msgid "Set the book producer"
msgstr "A gyártó beálítása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:611
msgid ""
"Extract cover from LRF file. Note that the LRF format has no defined cover, "
"so we use some heuristics to guess the cover."
msgstr ""
"A borító átültetése LRF típusú fájlokból. \t\r\n"
"Megjegyzendő, hogy az LRF formátumban nincs meghatározott borító, így "
"sokszor Heurisztikával állítunk elő fedelet."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:613
msgid "Set book ID"
msgstr "A könyv azonosítójának megadása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/convert_from.py:49
msgid "Could not find pdftohtml, check it is in your PATH"
msgstr ""
"Nem található egy összetevő : pdftohtml! \r\n"
"Ellenőrizd az elérési utat."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/convert_from.py:75
msgid ""
" is an image based PDF. Only conversion of text based PDFs is supported."
msgstr ""
" : ez egy kép-alapú PDF fájl. Csak a szöveg alapú PDF-ek konvertálása "
"támogatott."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/reflow.py:405
msgid "Be more verbose."
msgstr "Bőbeszédűbb kimenet."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/reflow.py:417
msgid "You must specify a single PDF file."
msgstr "Egy PDF fájlt kell megadnod."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/rtf/convert_from.py:146
msgid ""
"This RTF file has a feature calibre does not support. Convert it to HTML and "
"then convert it."
msgstr ""
"Ez az RTF fájl olyan formázásokat is tartalmaz, amiket a calibre nem "
"támogat. Először próbáld meg HTML formátumba konvertálni, majd használd a "
"calibre-t a további konvertáláshoz."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:44
msgid "Set the authors"
msgstr "Szerzők"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:48
msgid "Set the comment"
msgstr "Megjegyzés"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:300
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:69
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:55
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:108
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:361
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:971
msgid "Title"
msgstr "Cím"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:301
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:109
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:366
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:972
msgid "Author(s)"
msgstr "Szerző(k)"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:304
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:489
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single_ui.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:322
#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58
msgid "Comments"
msgstr "Megjegyzés"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:114
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:915
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:975
#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
msgid "Tags"
msgstr "Cimkék"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:314
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:115
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:327
#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
msgid "Series"
msgstr "Sorozat"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:315
msgid "Language"
msgstr "Nyelv"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:317
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:914
msgid "Timestamp"
msgstr "Dátum"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:204
msgid "A comma separated list of tags to set"
msgstr "A beállítandó cimkék vesszővel elválasztott listája"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:206
msgid "The series to which this book belongs"
msgstr "A sorozat, amihez ez a könyv tartozik"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:208
msgid "The series index"
msgstr "A könyv sorszáma a sorozatban"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:210
msgid "The book language"
msgstr "A könyv nyelve"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:54
msgid "Usage:"
msgstr "Használat"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/imp.py:53
msgid "Usage: imp-meta file.imp"
msgstr "Használat: imp-meta file.imp"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/imp.py:54
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:116
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/rb.py:60
msgid "No filename specified."
msgstr "Nem adtál meg fájlnevet."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109
msgid "The ISBN ID of the book you want metadata for."
msgstr "A keresett könyv ISBN száma."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111
msgid "The author whose book to search for."
msgstr "A keresett könyv szerzője."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113
msgid "The title of the book to search for."
msgstr "A keresett könyv címe."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:115
msgid "The publisher of the book to search for."
msgstr "A keresett könyv kiadója."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:54
msgid "LibraryThing.com timed out. Try again later."
msgstr "A LibraryThing.com nem válaszol, próbáld meg később."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:62
msgid " not found."
msgstr " nem található."
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "Semmit nem csinál"
@ -396,7 +63,7 @@ msgstr "Semmit nem csinál"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -427,15 +94,15 @@ msgstr "Semmit nem csinál"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -498,10 +165,22 @@ msgstr "Tömörített könyvek metaadatait is olvassa be"
msgid "Read metadata from ebooks in RAR archives"
msgstr "Metaadatok olvasása a RAR-ral tömörített könyvekből is"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr "Metaadatok beállítása a %s típusú fájlokban."
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Telepített bővítmények"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr "A fájltípus beépülőmodulok leképezése"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:30
msgid "Local plugin customization"
msgstr "Bővítmények testreszabása"
@ -664,6 +343,15 @@ msgstr ""
"Inkább a forrásfájlban található borítót használja a beállított borító "
"helyett, ha elérhető"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:145
msgid ""
"Remove the first image from the input ebook. Useful if the first image in "
"the source file is a cover and you are specifying an external cover."
msgstr ""
"Vegye ki az első képet a bemeneti e-könyvből. Ez akkor hasznos, ha az első "
"kép a fájlban a könyvborító, és te helyette másik borítót szeretnél "
"használni."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:149
msgid ""
"Turn off splitting at page breaks. Normally, input files are automatically "
@ -678,6 +366,15 @@ msgstr ""
"beolvasni. Ez a művelet azonban lassú, és ha a forrásfájlod sok oldaltörést "
"tartalmaz, akkor érdemes alkalmazni ezt az opciót."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:157
msgid ""
"XPath expression to detect page boundaries for building a custom pagination "
"map, as used by AdobeDE. Default is not to build an explicit pagination map."
msgstr ""
"XPath kifejezés az oldalhatárok észlelésére a saját lapozási táblázat "
"elkészítéséhez (az Adobe DE használja). Alapértelmezés szerint nem készítünk "
"lapozási táblázatot."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:161
msgid ""
"XPath expression to find the name of each page in the pagination map "
@ -742,6 +439,16 @@ msgstr ""
"tartalomjegyzékhez a második szinten. Minden bejegyzés az őt megelőző első "
"szintű bejegyzéshez fog tartozni."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:188
msgid ""
"XPath expression that specifies all tags that should be added to the Table "
"of Contents at level three. Each entry is added under the previous level two "
"entry."
msgstr ""
"XPath kifejezés, amely meghatározza az összes tag-et, amit hozzá lehet adni "
"a Tartalomjegyzék harmadik szintjéhez. Minden bejegyzés az előző szintű "
"(második) bejegyzés alá kerül."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:192
msgid ""
"Path to a .ncx file that contains the table of contents to use for this "
@ -761,6 +468,10 @@ msgid ""
"one is always used."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:202
msgid "Control page layout"
msgstr "Kontroláld az oldalelrendezést"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:204
msgid "Set the top margin in pts. Default is %default"
msgstr ""
@ -794,6 +505,41 @@ msgstr ""
"alapértelmezezz érték %defaultpt. Állítsd 0-ra a betűk átméretezésének "
"letiltásához."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:215
msgid ""
"Remove spacing between paragraphs. Also sets a indent on paragraphs of "
"1.5em. You can override this by adding p {text-indent: 0cm} to --override-"
"css. Spacing removal will not work if the source file forces inter-paragraph "
"spacing."
msgstr ""
"Közök eltávolítása a szövegtömbből. Ez a beállítás automatikusan 1.5em "
"méretű behúzást állít be a bekezdéshez. Ezt felül tudod írni, ha az --"
"override-css kapcsolónak a p {text-indent: 0cm} paramétert adod meg. Ez nem "
"fog működni, ha az eredeti fájlban kényszerített elrendezés van."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr "A kimenetben a szöveg ne legyen mindenképpen sorkizárt."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:223
msgid ""
"Remove table markup, converting it into paragraphs. This is useful if your "
"source file uses a table to manage layout."
msgstr ""
"Távolíts el a táblázatot és alakítsd át azt bekezdésekké.\r\n"
"Ez akkor hasznos, ha a forrás táblázatot használ az elrendezés kezelésére."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:226
msgid ""
"Preserve the HTML tag structure while splitting large HTML files. This is "
"only neccessary if the HTML files contain CSS that uses sibling selectors. "
"Enabling this greatly slows down processing of large HTML files."
msgstr ""
"Nagy HTML fájlok tag struktúrájának megőrzése darabolás közben. Erre csak "
"akkor van szükség, ha a HTML olyan CSS-t tartalmaz, ami 'sibling' típusú "
"selectorokat is használ. Ez az opció jelentősen lelassíthatja nagy fájlok "
"feldolgozását."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:232
msgid "Print generated OPF file to stdout"
msgstr "Írja ki a generált OPF fájl tartalmát"
@ -855,6 +601,21 @@ msgstr "Meg kell adnod egy HTML fájlt bemenetként"
msgid "%s format books are not supported"
msgstr "A %s formátumú könyvek sajnos nem támogatottak"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/split.py:30
msgid ""
"Could not find reasonable point at which to split: %s Sub-tree size: %d KB"
msgstr ""
"Nem találtam egyértelmű elválasztási pontokat, ahol darabolni lehetne: %s Az "
"fa mérete: %d kB."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/split.py:149
msgid ""
"\t\tToo much markup. Re-splitting without structure preservation. This may "
"cause incorrect rendering."
msgstr ""
"\t\tTúl sok formázás. Újradarabolom a szerkezet megőrzése nélkül. Ez "
"helytelen megjelenést eredményezhet."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:541
msgid "Written processed HTML to "
msgstr "Feldolgozott HTML-t kiírtam ide: "
@ -911,6 +672,10 @@ msgstr ""
"Cím beállítása. Ha nincs semmi beírva, megpróbálom automatikusan "
"megállapítani."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:962
msgid "The author(s) of the ebook, as a & separated list."
msgstr "A könyv szerzői '&' jelekkel elválasztott listában megadva."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:964
msgid "The subject(s) of this book, as a comma separated list."
msgstr "A könyv témája/témái, vesszővel elválasztva."
@ -965,7 +730,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [beállítások] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Célkönyvtár. Az alapértelmezett a jelenlegi könyvtár."
@ -980,7 +745,7 @@ msgid "Useful for debugging."
msgstr "Hasznos hibakeresésnél."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "Az OEB e-könyvet létrehoztam ennyi idő alatt:"
@ -1353,6 +1118,21 @@ msgstr "Nem adtál meg konvertálandó fájlt."
msgid "Rendered %s"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:229
msgid "Failed %s"
msgstr "Elkútruk! %s"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:280
msgid ""
"Failed to process comic: %s\n"
"\n"
"%s"
msgstr ""
"Elkúrtuk a képregény feldolgozását! :\n"
"%s\n"
"\n"
"%s"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:287
msgid ""
"Options to control the conversion of comics (CBR, CBZ) files into ebooks"
@ -1380,6 +1160,17 @@ msgid "Number of colors for grayscale image conversion. Default: %default"
msgstr ""
"Szürkeárnyalatok száma a képek konvertálásához. Alapértelmezés: %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:302
msgid ""
"Disable normalize (improve contrast) color range for pictures. Default: False"
msgstr ""
"Normalizállás mellőzése az élénk szinű képeknél (növeli a kontrasztot). "
"Alapértelmezett: hamis"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:304
msgid "Maintain picture aspect ratio. Default is to fill the screen."
msgstr "A képméretarány megtartása. Alapértelmezett: kijelző kitőltése"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:306
msgid "Disable sharpening."
msgstr "Élesítés letiltása."
@ -1394,6 +1185,22 @@ msgstr ""
msgid "Don't split landscape images into two portrait images"
msgstr "Fekvő képeket ne vágja szét két álló képre."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:313
msgid ""
"Keep aspect ratio and scale image using screen height as image width for "
"viewing in landscape mode."
msgstr ""
"Képméretarány megtartása és a képméret növelése növelése, tájképmódban lesz "
"látható."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:315
msgid ""
"Used for right-to-left publications like manga. Causes landscape pages to be "
"split into portrait pages from right to left."
msgstr ""
"Jobbról balra haladó kiadványoknál (pl. Manga) portréoldalakba hasítás "
"jobbról balra."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/comic/convert_from.py:317
msgid ""
"Enable Despeckle. Reduces speckle noise. May greatly increase processing "
@ -1491,10 +1298,26 @@ msgstr "Paraméterek a feeds2disk program számára"
msgid "Options to control the behavior of html2lrf"
msgstr "Paraméterek a html2lrf program számára"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:44
msgid "Fetching of recipe failed: "
msgstr "Az újság letölése nem sikerült: "
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:321
msgid "\tBook Designer file detected."
msgstr "\tBook Designer fájl található."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:323
msgid "\tParsing HTML..."
msgstr "\tHTML beolvasása..."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:346
msgid "\tBaen file detected. Re-parsing..."
msgstr "\tBaen fájl található. Újraelemzés..."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:362
msgid "Written preprocessed HTML to "
msgstr "Az előre feldolgozott HTML kiírása ide: "
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:380
msgid "Processing %s"
msgstr "Feldolgozás: %s"
@ -1617,6 +1440,10 @@ msgstr ""
msgid "Output LRS file"
msgstr "Kimeneti LRS fájl"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:139
msgid "Do not save embedded image and font files to disk"
msgstr "Ne mentse el a beágyazott képet és betűtípusfájlokat a lemezre"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:158
msgid "Parsing LRF..."
msgstr "LRF fájl beolvasása..."
@ -1709,6 +1536,31 @@ msgstr "Ikon kinyerése az LRF fájlból"
msgid "Set the publisher"
msgstr "Kiadó"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:607
msgid "Set the book classification"
msgstr "A könybesorolás beálítása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:608
msgid "Set the book creator"
msgstr "A szerző beálítása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:609
msgid "Set the book producer"
msgstr "A gyártó beálítása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:611
msgid ""
"Extract cover from LRF file. Note that the LRF format has no defined cover, "
"so we use some heuristics to guess the cover."
msgstr ""
"A borító átültetése LRF típusú fájlokból. \t\r\n"
"Megjegyzendő, hogy az LRF formátumban nincs meghatározott borító, így "
"sokszor Heurisztikával állítunk elő fedelet."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:613
msgid "Set book ID"
msgstr "A könyv azonosítójának megadása"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/mobi/convert_from.py:43
msgid ""
"Usage: %prog [options] mybook.mobi|prc\n"
@ -1717,6 +1569,19 @@ msgid ""
"%prog converts mybook.mobi to mybook.lrf"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/convert_from.py:49
msgid "Could not find pdftohtml, check it is in your PATH"
msgstr ""
"Nem található egy összetevő : pdftohtml! \r\n"
"Ellenőrizd az elérési utat."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/convert_from.py:75
msgid ""
" is an image based PDF. Only conversion of text based PDFs is supported."
msgstr ""
" : ez egy kép-alapú PDF fájl. Csak a szöveg alapú PDF-ek konvertálása "
"támogatott."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/convert_from.py:94
msgid ""
"%prog [options] mybook.pdf\n"
@ -1731,6 +1596,14 @@ msgid ""
"current directory."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/reflow.py:405
msgid "Be more verbose."
msgstr "Bőbeszédűbb kimenet."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/pdf/reflow.py:417
msgid "You must specify a single PDF file."
msgstr "Egy PDF fájlt kell megadnod."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/rtf/convert_from.py:21
msgid ""
"%prog [options] mybook.rtf\n"
@ -1739,6 +1612,15 @@ msgid ""
"%prog converts mybook.rtf to mybook.lrf"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/rtf/convert_from.py:146
msgid ""
"This RTF file has a feature calibre does not support. Convert it to HTML and "
"then convert it."
msgstr ""
"Ez az RTF fájl olyan formázásokat is tartalmaz, amiket a calibre nem "
"támogat. Először próbáld meg HTML formátumba konvertálni, majd használd a "
"calibre-t a további konvertáláshoz."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:19
msgid ""
"%prog [options] mybook.txt\n"
@ -1747,14 +1629,108 @@ msgid ""
"%prog converts mybook.txt to mybook.lrf"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:44
msgid "Set the authors"
msgstr "Szerzők"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:48
msgid "Set the comment"
msgstr "Megjegyzés"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:300
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:69
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:70
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:55
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:108
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:361
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:971
msgid "Title"
msgstr "Cím"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:301
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:56
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:109
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:366
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:972
msgid "Author(s)"
msgstr "Szerző(k)"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:303
msgid "Producer"
msgstr "Producer"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:304
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:489
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single_ui.py:517
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:322
#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58
msgid "Comments"
msgstr "Megjegyzés"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:312
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:114
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:311
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:915
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:975
#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
msgid "Tags"
msgstr "Cimkék"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:314
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:115
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:327
#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
msgid "Series"
msgstr "Sorozat"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:315
msgid "Language"
msgstr "Nyelv"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:317
#: /home/kovid/work/calibre/src/calibre/gui2/library.py:914
msgid "Timestamp"
msgstr "Dátum"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:204
msgid "A comma separated list of tags to set"
msgstr "A beállítandó cimkék vesszővel elválasztott listája"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:206
msgid "The series to which this book belongs"
msgstr "A sorozat, amihez ez a könyv tartozik"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:208
msgid "The series index"
msgstr "A könyv sorszáma a sorozatban"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:210
msgid "The book language"
msgstr "A könyv nyelve"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/epub.py:212
msgid "Extract the cover"
msgstr "Állítsa elő a borítót"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/fb2.py:54
msgid "Usage:"
msgstr "Használat"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/imp.py:53
msgid "Usage: imp-meta file.imp"
msgstr "Használat: imp-meta file.imp"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/imp.py:54
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:116
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/rb.py:60
msgid "No filename specified."
msgstr "Nem adtál meg fájlnevet."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:98
msgid ""
"\n"
@ -1769,6 +1745,26 @@ msgid ""
"\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:109
msgid "The ISBN ID of the book you want metadata for."
msgstr "A keresett könyv ISBN száma."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:111
msgid "The author whose book to search for."
msgstr "A keresett könyv szerzője."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:113
msgid "The title of the book to search for."
msgstr "A keresett könyv címe."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:115
msgid "The publisher of the book to search for."
msgstr "A keresett könyv kiadója."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:54
msgid "LibraryThing.com timed out. Try again later."
msgstr "A LibraryThing.com nem válaszol, próbáld meg később."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:61
msgid ""
"Could not fetch cover as server is experiencing high load. Please try again "
@ -1777,6 +1773,10 @@ msgstr ""
"A szerver túlterheltsége miatt nem tudta letölteni a borítót. Kérem próbálja "
"meg később."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:62
msgid " not found."
msgstr " nem található."
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/library_thing.py:65
msgid "LibraryThing.com server error. Try again later."
msgstr "LibraryThing.com szerverhiba. Próbálja meg később."
@ -1828,11 +1828,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3992,9 +3992,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5819,20 +5819,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6273,6 +6273,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6289,7 +6290,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6373,15 +6374,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -8,14 +8,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre_calibre-it\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-16 09:34+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: italiano\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
@ -1273,6 +1273,7 @@ msgstr "serbo"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -1289,7 +1290,7 @@ msgstr "serbo"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -1688,7 +1689,7 @@ msgstr "Non fa assolutamente niente"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -1719,15 +1720,15 @@ msgstr "Non fa assolutamente niente"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -2180,7 +2181,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [opzioni] FILELIT"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Cartella in uscita. Predefinita: cartella corrente."
@ -2197,7 +2198,7 @@ msgid "Useful for debugging."
msgstr "Utile per il debugging"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "Libro OEB creato in"
@ -3271,11 +3272,11 @@ msgstr "Uso: pdf-meta-file.pdf"
msgid "Usage: rb-meta file.rb"
msgstr "Uso: rb-meta file.rb"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [opzioni] miolibro.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "MOBI HTML raw salvato in"
@ -4690,9 +4691,9 @@ msgstr "Aggiungi una fonte di notizie personalizzata"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Notizie"
@ -6591,21 +6592,21 @@ msgstr ""
"\n"
"Per aiuto su un comando particolare: %%prog command --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Sto copiando i libri in %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Sto copiando <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
"<p>Sto migrando il vecchio database nella nuova biblioteca in %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Compattazione database"
@ -6998,6 +6999,9 @@ msgstr "Scaricamento fallito dell'articolo: %s"
msgid "Fetching feed"
msgstr "Scaricamento feed"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 08:49+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:28+0000\n"
"Last-Translator: MASA.H <masahase@users.sourceforge.jp>\n"
"Language-Team: Japanese <ja@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "まったく何もしません。(何も影響しません。)"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "まったく何もしません。(何も影響しません。)"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -623,7 +623,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "出力先(デフォルトはカレント)"
@ -638,7 +638,7 @@ msgid "Useful for debugging."
msgstr "デバッグに有用"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1594,11 +1594,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3758,9 +3758,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "ニュース"
@ -5585,20 +5585,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "データベースのコンパクト化"
@ -6039,6 +6039,7 @@ msgstr "セルビア語"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6055,7 +6056,7 @@ msgstr "セルビア語"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6139,15 +6140,18 @@ msgstr "ボスニア語"
msgid "Portugese"
msgstr "ポルトガル語"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: de\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-16 18:44+0000\n"
"Last-Translator: S. Dorscht <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@lists.kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
@ -788,7 +788,7 @@ msgstr "Macht gar nix"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -819,15 +819,15 @@ msgstr "Macht gar nix"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -1432,7 +1432,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Ausgabeverzeichnis. Voreinstellung ist aktuelles Verzeichnis."
@ -1449,7 +1449,7 @@ msgid "Useful for debugging."
msgstr "Hilfreich bei der Fehlersuche."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB eBook erstellt in"
@ -2594,11 +2594,11 @@ msgstr "Benutzung: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Erstelle Mobipocket Datei aus EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] dateiname.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Original MOBI HTML gespeichert in"
@ -4572,9 +4572,9 @@ msgstr "Neue individuelle Nachrichtenquelle hinzufügen"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Nachrichten"
@ -6593,20 +6593,20 @@ msgstr ""
"\n"
"Sie erhalten Hilfe zu einem bestimmten Befehl mit: %%prog command --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Kopiere Bücher nach %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopiere <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Migriere alte Datenbank zu eBook Bibliothek in %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Komprimiere Datenbank"
@ -7105,6 +7105,7 @@ msgstr "Serbisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -7121,7 +7122,7 @@ msgstr "Serbisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -7201,15 +7202,18 @@ msgstr "Deutsch"
msgid "Portugese"
msgstr "Portugisisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr "Ungarisch"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Überspringe doppelten Artikel: %s"

View File

@ -7,160 +7,20 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 09:04+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:29+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Dutch <nl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "Doet absoluut niets."
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:148
msgid "File type"
msgstr "Bestandstype"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:12
msgid ""
"Follow all local links in an HTML file and create a ZIP file containing all "
"linked files. This plugin is run every time you add an HTML file to the "
"library."
msgstr ""
"Volg alle plaatselijke links in een HTML bestand en maak een ZIP bestand met "
"alle gelinkte bestanden. Deze plugin wordt elke keer u een HTML bestand aan "
"de bibliotheek toevoegd, opgestart."
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:32
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:43
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:53
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:64
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:74
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:84
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:94
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:105
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:126
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:136
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:147
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:157
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:167
msgid "Read metadata from %s files"
msgstr "Lees de metadata van de %s bestanden"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:197
msgid "Read metadata from ebooks in ZIP archives"
msgstr "Lees de metadata van ebooks in ZIP archieven"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:207
msgid "Read metadata from ebooks in RAR archives"
msgstr "Lees de metadata van ebooks in RAR archieven"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr "Bepaal metadata in %s bestanden"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Geïnstalleerde plugins"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:31
msgid "Disabled plugins"
msgstr "Gedesactiveerde plugins"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:73
msgid "No valid plugin found in "
msgstr "Geen geldige plugin gevonden in "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:275
msgid "Add a plugin by specifying the path to the zip file containing it."
msgstr ""
"Voeg een plugin toe door het pad op te geven naar het zip bestand waarin het "
"zich bevindt."
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:281
msgid "List all installed plugins"
msgstr "Toon geïnstalleerde plugins"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:283
msgid "Enable the named plugin"
msgstr "Activeer de genoemde plugin"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:285
msgid "Disable the named plugin"
msgstr "Desactiveer de genoemde plugin"
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:60
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:91
msgid "There is insufficient free space on the storage card"
msgstr "Er is onvoldoende vrije plaats op de geheugenkaart"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:139
msgid "Path to the cover to be used for this book"
msgstr "Pad naar de omslag die voor dit boek gebruikt moet orden"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:142
msgid ""
"Use the cover detected from the source file in preference to the specified "
"cover."
msgstr ""
"Gebruik de in het bronbestand gedetecteerde omslag en niet de opgegeven "
"omslag"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:175
msgid "Don't add auto-detected chapters to the Table of Contents."
msgstr ""
"Voeg geen automatisch gedetecteerde hoofdstukken toe aan de Inhoudstafel"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:202
msgid "Control page layout"
msgstr "Controleer de pagina opmaak"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:204
msgid "Set the top margin in pts. Default is %default"
msgstr "Bepaal de bovenmarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:206
msgid "Set the bottom margin in pts. Default is %default"
msgstr "Bepaal de ondermarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:208
msgid "Set the left margin in pts. Default is %default"
msgstr "Bepaal de linkermarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:210
msgid "Set the right margin in pts. Default is %default"
msgstr "Bepaal de rechtermarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:212
msgid ""
"The base font size in pts. Default is %defaultpt. Set to 0 to disable "
"rescaling of fonts."
msgstr ""
"De basis lettergrootte in pts. Standaard is het %defaultpt. Stel in op 0 om "
"het herschalen van lettertypen uit te schakelen"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:215
msgid ""
"Remove spacing between paragraphs. Also sets a indent on paragraphs of "
"1.5em. You can override this by adding p {text-indent: 0cm} to --override-"
"css. Spacing removal will not work if the source file forces inter-paragraph "
"spacing."
msgstr ""
"Verwijderd spatiëring tussen de paragrafen. Voegt eveneens een inspringen "
"van 1,5em toe aan paragrafen. U kan dit overschrijven door p {text-indent: "
"0cm} toe te voegen aan --override-css. Het verwijderen van spatiëring tussen "
"de paragrafen zal niet werken indien het bronbestand spatiëring dwingt "
"tussen paragrafen."
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:44
#: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:98
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:50
@ -203,7 +63,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -234,15 +94,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -254,6 +114,10 @@ msgstr "Onbekend"
msgid "Base"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:148
msgid "File type"
msgstr "Bestandstype"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:182
msgid "Metadata reader"
msgstr ""
@ -262,10 +126,57 @@ msgstr ""
msgid "Metadata writer"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:12
msgid ""
"Follow all local links in an HTML file and create a ZIP file containing all "
"linked files. This plugin is run every time you add an HTML file to the "
"library."
msgstr ""
"Volg alle plaatselijke links in een HTML bestand en maak een ZIP bestand met "
"alle gelinkte bestanden. Deze plugin wordt elke keer u een HTML bestand aan "
"de bibliotheek toevoegd, opgestart."
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:32
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:43
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:53
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:64
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:74
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:84
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:94
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:105
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:126
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:136
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:147
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:157
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:167
msgid "Read metadata from %s files"
msgstr "Lees de metadata van de %s bestanden"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:177
msgid "Extract cover from comic files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:197
msgid "Read metadata from ebooks in ZIP archives"
msgstr "Lees de metadata van ebooks in ZIP archieven"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:207
msgid "Read metadata from ebooks in RAR archives"
msgstr "Lees de metadata van ebooks in RAR archieven"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr "Bepaal metadata in %s bestanden"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Geïnstalleerde plugins"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr ""
@ -274,6 +185,14 @@ msgstr ""
msgid "Local plugin customization"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:31
msgid "Disabled plugins"
msgstr "Gedesactiveerde plugins"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:73
msgid "No valid plugin found in "
msgstr "Geen geldige plugin gevonden in "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:192
msgid "Initialization of plugin %s failed with traceback:"
msgstr ""
@ -286,6 +205,12 @@ msgid ""
" "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:275
msgid "Add a plugin by specifying the path to the zip file containing it."
msgstr ""
"Voeg een plugin toe door het pad op te geven naar het zip bestand waarin het "
"zich bevindt."
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:277
msgid "Remove a custom plugin by name. Has no effect on builtin plugins"
msgstr ""
@ -296,12 +221,29 @@ msgid ""
"by a comma."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:281
msgid "List all installed plugins"
msgstr "Toon geïnstalleerde plugins"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:283
msgid "Enable the named plugin"
msgstr "Activeer de genoemde plugin"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:285
msgid "Disable the named plugin"
msgstr "Desactiveer de genoemde plugin"
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:41
#: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:394
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:72
msgid "The reader has no storage card connected."
msgstr "Er is geen geheugen kaart verbonden met de reader."
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:60
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:91
msgid "There is insufficient free space on the storage card"
msgstr "Er is onvoldoende vrije plaats op de geheugenkaart"
#: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:62
#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:93
msgid "There is insufficient free space in main memory"
@ -367,6 +309,18 @@ msgid ""
"\"both\" will use both page breaks and lines to mark chapters."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:139
msgid "Path to the cover to be used for this book"
msgstr "Pad naar de omslag die voor dit boek gebruikt moet orden"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:142
msgid ""
"Use the cover detected from the source file in preference to the specified "
"cover."
msgstr ""
"Gebruik de in het bronbestand gedetecteerde omslag en niet de opgegeven "
"omslag"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:145
msgid ""
"Remove the first image from the input ebook. Useful if the first image in "
@ -411,6 +365,11 @@ msgid ""
"threshold number of chapters were detected."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:175
msgid "Don't add auto-detected chapters to the Table of Contents."
msgstr ""
"Voeg geen automatisch gedetecteerde hoofdstukken toe aan de Inhoudstafel"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:177
msgid ""
"If fewer than this number of chapters is detected, then links are added to "
@ -453,6 +412,47 @@ msgid ""
"one is always used."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:202
msgid "Control page layout"
msgstr "Controleer de pagina opmaak"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:204
msgid "Set the top margin in pts. Default is %default"
msgstr "Bepaal de bovenmarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:206
msgid "Set the bottom margin in pts. Default is %default"
msgstr "Bepaal de ondermarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:208
msgid "Set the left margin in pts. Default is %default"
msgstr "Bepaal de linkermarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:210
msgid "Set the right margin in pts. Default is %default"
msgstr "Bepaal de rechtermarge in pts. Standaard is het %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:212
msgid ""
"The base font size in pts. Default is %defaultpt. Set to 0 to disable "
"rescaling of fonts."
msgstr ""
"De basis lettergrootte in pts. Standaard is het %defaultpt. Stel in op 0 om "
"het herschalen van lettertypen uit te schakelen"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:215
msgid ""
"Remove spacing between paragraphs. Also sets a indent on paragraphs of "
"1.5em. You can override this by adding p {text-indent: 0cm} to --override-"
"css. Spacing removal will not work if the source file forces inter-paragraph "
"spacing."
msgstr ""
"Verwijderd spatiëring tussen de paragrafen. Voegt eveneens een inspringen "
"van 1,5em toe aan paragrafen. U kan dit overschrijven door p {text-indent: "
"0cm} toe te voegen aan --override-css. Het verwijderen van spatiëring tussen "
"de paragrafen zal niet werken indien het bronbestand spatiëring dwingt "
"tussen paragrafen."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr ""
@ -648,7 +648,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [opties] LITBESTAND"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Output folder. Standaard is dit de huidige folder."
@ -665,7 +665,7 @@ msgid "Useful for debugging."
msgstr "Handig voor Debugging"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB boek bemaakt in"
@ -1781,11 +1781,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [opties] mijnboek.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "RAW MOBI HTML bewaard in"
@ -3980,9 +3980,9 @@ msgstr "Voeg een persoonlijke nieuwsbron toe"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5939,20 +5939,20 @@ msgstr ""
"\n"
"Voor help met een specifiek commando: %%prog command --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Copieer <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Migreer oude database naar eboek bibliotheek in %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Comprimeren database"
@ -6445,6 +6445,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6461,7 +6462,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6545,15 +6546,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,319 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 09:24+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:30+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Polish <pl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:197
msgid "Read metadata from ebooks in ZIP archives"
msgstr "Odczyt metadanych z e-booków w archiwach ZIP"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:207
msgid "Read metadata from ebooks in RAR archives"
msgstr "Odczyt metadanych z e-booków w archiwach RAR"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr "Ustaw metadane w %s plikach"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr "Nie wymuszaj wyjustowania tekstu w pliku wynikowym."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:962
msgid "The author(s) of the ebook, as a & separated list."
msgstr "Autor(zy) ebooka, jako lista rozdzielana znakiem &."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:114
msgid "Add extra spacing below the header. Default is %default px."
msgstr ""
"Dodaj dodatkowy odstęp poniżej nagłówka. Domyślna wartość to %default "
"pikseli."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:184
msgid ""
"Force a page break before tags whose names match this regular expression."
msgstr ""
"Wymusza koniec strony przed znacznikami, których nazwa pokrywa się z danym "
"wyrażeniem regularnym."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:30
msgid "Keep generated HTML files after completing conversion to LRF."
msgstr "Zachowaj wygenerowany plik HTML po konwersji do LRF."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:606
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/mobi.py:195
msgid "Set the publisher"
msgstr "Ustaw wydawcę"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/mobi.py:197
msgid "Set the ISBN"
msgstr "Ustaw ISBN"
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:66
msgid "Disable notifications from the system tray icon"
msgstr "Zablokuj powiadomienia z ikony w zasobniku systemowym"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:421
msgid "Choose format to send to device"
msgstr "Wybierz format plików przesyłanych na urządzenie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:561
msgid "Show &notifications in system tray"
msgstr "Pokaż &powiadomienia w zasobniku systemowym"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:575
msgid "Use internal &viewer for:"
msgstr "Użyj &wewnętrzej przeglądarki dla:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:50
msgid "&Show this warning again"
msgstr "&Zawsze pokazuj to ostrzeżenie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:493
msgid "Remove &spacing between paragraphs"
msgstr "Usuń &odstepny pomiędzy paragrafami"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:498
msgid "No text &justification"
msgstr "Nie &justuj tekstu"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:518
msgid "Automatic &chapter detection"
msgstr "Automatyczne wykrywanie &rozdziałów"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:522
msgid "Automatic &Table of Contents"
msgstr "Automatyczny &spis treści"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:524
msgid "Do not add &detected chapters to the Table of Contents"
msgstr "Nie &dodawaj automatycznie wykrytych rozdziałów do spisu treści"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:526
msgid "&Force use of auto-generated Table of Contents"
msgstr "&Wymuś użycie wygenerowanego automatycznie spisu treści"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:171
msgid "&Schedule for download:"
msgstr "&Zaplanuj do pobrania:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:221
msgid "Choose a recipe file"
msgstr "Wybierz plik źródła"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_24sata.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_dnevnik_cro.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hrt.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_jutarnji.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nacional_cro.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_vecernji_list.py:26
msgid "Croatian"
msgstr "Chorwackie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_24sata_rs.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_b92.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_blic.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_borba.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_danas.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_e_novine.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_glas_srpske.py:27
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_krstarica.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nin.py:31
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_novosti.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nspm.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pescanik.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pobjeda.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_politika.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pressonline.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_rts.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tanjug.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_vijesti.py:28
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_vreme.py:28
msgid "Serbian"
msgstr "Serbskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_adventuregamers.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_adventuregamers.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_amspec.py:14
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ap.py:11
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ars_technica.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_atlantic.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_barrons.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_bbc.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_business_week.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_chicago_breaking_news.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_chicago_tribune.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_chr_mon.py:11
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cincinnati_enquirer.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cnn.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_common_dreams.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_daily_mail.py:6
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_daily_telegraph.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_discover_magazine.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_dna.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ecogeek.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_economist.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_endgadget.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_espn.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_exiled.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_financial_times.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_forbes.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_freakonomics.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_fudzilla.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_glasgow_herald.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_globe_and_mail.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_guardian.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_harpers.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_harpers_full.py:27
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_honoluluadvertiser.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_iht.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_indy_star.py:6
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_irish_times.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_japan_times.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_joelonsoftware.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_jpost.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_juventudrebelde_english.py:44
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_krstarica_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_latimes.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_linux_magazine.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lrb.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_miami_herald.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_moscow_times.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_msdnmag_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nasa.py:34
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_scientist.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_york_review_of_books.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_york_review_of_books_no_sub.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_yorker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_news_times.py:7
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_newsweek.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nspm_int.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes_sub.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_outlook_india.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_physics_today.py:11
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_physics_world.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_politico.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_portfolio.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_reuters.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_san_fran_chronicle.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_science_aas.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_science_news.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_sciencedaily.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_scientific_american.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_st_petersburg_times.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_starbulletin.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_straitstimes.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_telegraph_uk.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_teleread.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_age.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_nation.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_oz.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_register.py:6
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_scotsman.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_usatoday.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_usnews.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_utne.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wash_post.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wikinews_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_winsupersite.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wired.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wsj.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_xkcd.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zdnet.py:17
msgid "English"
msgstr "Angielskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ambito.py:61
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_clarin.py:64
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_criticadigital.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_el_mercurio_chile.py:61
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_el_pais.py:14
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_el_universal.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_elargentino.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_elcronista.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_elmundo.py:60
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_granma.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_infobae.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_juventudrebelde.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_cuarta.py:53
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_segunda.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_tercera.py:64
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lanacion.py:60
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lanacion_chile.py:54
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa.py:60
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa_ni.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pagina12.py:25
msgid "Spanish"
msgstr "Hiszpańskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_republica.py:6
msgid "Italian"
msgstr "Włoskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_courrierinternational.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cyberpresse.py:9
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_liberation.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_mediapart.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_mondedurable.py:13
msgid "French"
msgstr "Francuskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_de_standaard.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_demorgen_be.py:16
msgid "Dutch"
msgstr "Holenderskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_der_standard.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_diepresse.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_faznet.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ftd.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_heise.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hna.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nzz_ger.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegelde.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware_de.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zeitde.py:15
msgid "German"
msgstr "Niemieckie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_estadao.py:62
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_jb_online.py:47
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_o_globo.py:69
msgid "Portugese"
msgstr "Portugalskie"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "Ta opcja nic nie zmienia"
@ -366,7 +63,7 @@ msgstr "Ta opcja nic nie zmienia"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -397,15 +94,15 @@ msgstr "Ta opcja nic nie zmienia"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -460,6 +157,22 @@ msgstr "Odczytaj metadane z %s plików"
msgid "Extract cover from comic files"
msgstr "Wyodrębnij okładki z plików komisów"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:197
msgid "Read metadata from ebooks in ZIP archives"
msgstr "Odczyt metadanych z e-booków w archiwach ZIP"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:207
msgid "Read metadata from ebooks in RAR archives"
msgstr "Odczyt metadanych z e-booków w archiwach RAR"
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr "Ustaw metadane w %s plikach"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Zainstalowane wtyczki"
@ -771,6 +484,10 @@ msgid ""
"spacing."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr "Nie wymuszaj wyjustowania tekstu w pliku wynikowym."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:223
msgid ""
"Remove table markup, converting it into paragraphs. This is useful if your "
@ -917,6 +634,10 @@ msgstr "Ustaw metadane w wygenerowanym e-booku."
msgid "Set the title. Default is to autodetect."
msgstr "Ustaw tytuł ksiązki. Domyślnie jest on wykrywny automatycznie."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:962
msgid "The author(s) of the ebook, as a & separated list."
msgstr "Autor(zy) ebooka, jako lista rozdzielana znakiem &."
#: /home/kovid/work/calibre/src/calibre/ebooks/html.py:964
msgid "The subject(s) of this book, as a comma separated list."
msgstr "Temat(y) tej książki, jako lista rozdzielona przecinkami."
@ -970,7 +691,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [opcje] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Folder docelowy. Domyślnie to aktualny folder."
@ -987,7 +708,7 @@ msgid "Useful for debugging."
msgstr "Użyteczne dla debugowania."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB ebook stworzony w"
@ -1097,6 +818,12 @@ msgstr ""
"Ustaw format nagłówka. %a jest zastępowane nazwiskiem autora, %t - tytułem "
"książki. Styl domyślny: %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:114
msgid "Add extra spacing below the header. Default is %default px."
msgstr ""
"Dodaj dodatkowy odstęp poniżej nagłówka. Domyślna wartość to %default "
"pikseli."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:116
msgid ""
"Override the CSS. Can be either a path to a CSS stylesheet or a string. If "
@ -1222,6 +949,13 @@ msgid ""
"has only a few elements."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:184
msgid ""
"Force a page break before tags whose names match this regular expression."
msgstr ""
"Wymusza koniec strony przed znacznikami, których nazwa pokrywa się z danym "
"wyrażeniem regularnym."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/__init__.py:186
msgid ""
"Force a page break before an element having the specified attribute. The "
@ -1486,6 +1220,10 @@ msgstr ""
msgid "Print generated HTML to stdout and quit."
msgstr "Wydrukuj wygenerowany HTML do wyjścia standardowego i zamknij."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:30
msgid "Keep generated HTML files after completing conversion to LRF."
msgstr "Zachowaj wygenerowany plik HTML po konwersji do LRF."
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
msgid "Options to control the behavior of feeds2disk"
msgstr "Opcje kontrolujące zachowanie feeds2disk"
@ -1715,6 +1453,11 @@ msgstr ""
msgid "Extract thumbnail from LRF file"
msgstr "Wypakuj miniaturkę z pliku LRF"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:606
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/mobi.py:195
msgid "Set the publisher"
msgstr "Ustaw wydawcę"
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:607
msgid "Set the book classification"
msgstr ""
@ -1975,6 +1718,10 @@ msgstr ""
msgid "Set the language"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/mobi.py:197
msgid "Set the ISBN"
msgstr "Ustaw ISBN"
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1026
msgid "Set the dc:language field"
msgstr ""
@ -1991,11 +1738,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -2250,6 +1997,10 @@ msgid ""
"window"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:66
msgid "Disable notifications from the system tray icon"
msgstr "Zablokuj powiadomienia z ikony w zasobniku systemowym"
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:68
msgid "Default action to perform when send to device button is clicked"
msgstr ""
@ -2373,6 +2124,10 @@ msgstr ""
msgid "selected to send"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:421
msgid "Choose format to send to device"
msgstr "Wybierz format plików przesyłanych na urządzenie"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:428
msgid "No device"
msgstr ""
@ -2874,6 +2629,10 @@ msgid "Enable system &tray icon (needs restart)"
msgstr ""
"Aktywuj ikonę w &zasobniku systemowym (wymaga ponownego uruchomienia)"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:561
msgid "Show &notifications in system tray"
msgstr "Pokaż &powiadomienia w zasobniku systemowym"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:562
msgid "Show cover &browser in a separate window (needs restart)"
msgstr ""
@ -2918,6 +2677,10 @@ msgstr "Pokazuj &tekst pod przyciskami na pasku narzędzi"
msgid "Select visible &columns in library view"
msgstr "Wybierz &kolumny pokazywane w widoku biblioteki:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:575
msgid "Use internal &viewer for:"
msgstr "Użyj &wewnętrzej przeglądarki dla:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config_ui.py:576
msgid "calibre can send your books to you (or your reader) by email"
msgstr ""
@ -3148,6 +2911,10 @@ msgstr "&Dodaj"
msgid "Are you sure?"
msgstr "Na pewno?"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/confirm_delete_ui.py:50
msgid "&Show this warning again"
msgstr "&Zawsze pokazuj to ostrzeżenie"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/conversion_error_ui.py:41
msgid "ERROR"
msgstr "BŁĄD"
@ -3422,6 +3189,10 @@ msgstr "Główny &rozmiar czcionki:"
msgid " pt"
msgstr " pkt"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:493
msgid "Remove &spacing between paragraphs"
msgstr "Usuń &odstepny pomiędzy paragrafami"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:494
msgid "Preserve &tag structure when splitting"
msgstr ""
@ -3438,6 +3209,10 @@ msgstr ""
msgid "&Use author sort to set author field in output"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:498
msgid "No text &justification"
msgstr "Nie &justuj tekstu"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:499
msgid "&Linearize tables"
msgstr ""
@ -3504,6 +3279,10 @@ msgstr ""
msgid "&Name XPath:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:518
msgid "Automatic &chapter detection"
msgstr "Automatyczne wykrywanie &rozdziałów"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:519
msgid ""
"<p>You can control how calibre detects chapters using a XPath expression. To "
@ -3520,14 +3299,26 @@ msgstr ""
msgid "Chapter &mark:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:522
msgid "Automatic &Table of Contents"
msgstr "Automatyczny &spis treści"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:523
msgid "Number of &links to add to Table of Contents"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:524
msgid "Do not add &detected chapters to the Table of Contents"
msgstr "Nie &dodawaj automatycznie wykrytych rozdziałów do spisu treści"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:525
msgid "Chapter &threshold"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:526
msgid "&Force use of auto-generated Table of Contents"
msgstr "&Wymuś użycie wygenerowanego automatycznie spisu treści"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:527
msgid "Level &1 TOC"
msgstr ""
@ -4125,9 +3916,9 @@ msgstr "Dodaj własne źródło aktualności"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Aktualności"
@ -4152,6 +3943,10 @@ msgstr "Planowanie pobierania"
msgid "blurb"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:171
msgid "&Schedule for download:"
msgstr "&Zaplanuj do pobrania:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:172
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:174
msgid "Every "
@ -4391,6 +4186,10 @@ msgstr ""
msgid "Pick the recipe to customize"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:221
msgid "Choose a recipe file"
msgstr "Wybierz plik źródła"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:248
msgid "Add custom news source"
msgstr "Dodaj własne źródło aktualności"
@ -5974,20 +5773,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Kopiowanie książek do %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopiowanie <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Kompaktowanie bazy danych"
@ -6329,19 +6128,224 @@ msgstr "Pobieranie artykułu nie powiodło się: %s"
msgid "Fetching feed"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_24sata.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_dnevnik_cro.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hrt.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_jutarnji.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nacional_cro.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_vecernji_list.py:26
msgid "Croatian"
msgstr "Chorwackie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_24sata_rs.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_b92.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_blic.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_borba.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_danas.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_e_novine.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_glas_srpske.py:27
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_krstarica.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nin.py:31
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_novosti.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nspm.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pescanik.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pobjeda.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_politika.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pressonline.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_rts.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tanjug.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_vijesti.py:28
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_vreme.py:28
msgid "Serbian"
msgstr "Serbskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_adventuregamers.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_adventuregamers.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_amspec.py:14
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ap.py:11
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ars_technica.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_atlantic.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_barrons.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_bbc.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_business_week.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_chicago_breaking_news.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_chicago_tribune.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_chr_mon.py:11
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cincinnati_enquirer.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cnn.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_common_dreams.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_daily_mail.py:6
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_daily_telegraph.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_discover_magazine.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_dna.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ecogeek.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_economist.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_endgadget.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_espn.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_exiled.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_financial_times.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_forbes.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_freakonomics.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_fudzilla.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_glasgow_herald.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_globe_and_mail.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_guardian.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_harpers.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_harpers_full.py:27
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_honoluluadvertiser.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_iht.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_indy_star.py:6
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_irish_times.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_japan_times.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_joelonsoftware.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_jpost.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_juventudrebelde_english.py:44
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_krstarica_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_latimes.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_linux_magazine.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lrb.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_miami_herald.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_moscow_times.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_msdnmag_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nasa.py:34
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_scientist.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_york_review_of_books.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_york_review_of_books_no_sub.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_new_yorker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_news_times.py:7
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_newsweek.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nspm_int.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes_sub.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_outlook_india.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_physics_today.py:11
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_physics_world.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_politico.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_portfolio.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_reuters.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_san_fran_chronicle.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_science_aas.py:13
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_science_news.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_sciencedaily.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_scientific_american.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_st_petersburg_times.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_starbulletin.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_straitstimes.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_telegraph_uk.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_teleread.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_age.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_nation.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_oz.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_register.py:6
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_the_scotsman.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_usatoday.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_usnews.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_utne.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wash_post.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wikinews_en.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_winsupersite.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wired.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_wsj.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_xkcd.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zdnet.py:17
msgid "English"
msgstr "Angielskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ambito.py:61
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_clarin.py:64
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_criticadigital.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_el_mercurio_chile.py:61
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_el_pais.py:14
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_el_universal.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_elargentino.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_elcronista.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_elmundo.py:60
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_granma.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_infobae.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_juventudrebelde.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_cuarta.py:53
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_segunda.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_tercera.py:64
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lanacion.py:60
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lanacion_chile.py:54
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa.py:60
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa_ni.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pagina12.py:25
msgid "Spanish"
msgstr "Hiszpańskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_republica.py:6
msgid "Italian"
msgstr "Włoskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_courrierinternational.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cyberpresse.py:9
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_liberation.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_mediapart.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_mondedurable.py:13
msgid "French"
msgstr "Francuskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_de_standaard.py:12
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_demorgen_be.py:16
msgid "Dutch"
msgstr "Holenderskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_der_standard.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_diepresse.py:23
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_faznet.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_ftd.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_heise.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hna.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nzz_ger.py:24
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegelde.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py:16
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware_de.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zeitde.py:15
msgid "German"
msgstr "Niemieckie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_dnevni_avaz.py:27
msgid "Bosnian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_estadao.py:62
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_jb_online.py:47
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_o_globo.py:69
msgid "Portugese"
msgstr "Portugalskie"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-16 09:27+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Portuguese <pt@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:68
@ -172,7 +172,7 @@ msgstr "Não faz absolutamente nada"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -203,15 +203,15 @@ msgstr "Não faz absolutamente nada"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -837,7 +837,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Pasta de destino. A predefinição é a pasta actual."
@ -854,7 +854,7 @@ msgid "Useful for debugging."
msgstr "Útil para depurar."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "Livro OEB criado em"
@ -2002,11 +2002,11 @@ msgstr "Utilização: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "A criar o ficheiro Mobipocket a partir de EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] myebook.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "MOBI HTML em bruto guardado em"
@ -4165,9 +4165,9 @@ msgstr "Adicionar uma fonte de notícias personalizada"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Notícias"
@ -6205,22 +6205,22 @@ msgstr ""
" %s\n"
"Para ajuda num comando individual: %%prog comando --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>A copiar os livros para %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "A copiar <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
"<p>A migrar a base de dados antiga para a biblioteca de livros em "
"%s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "A compactar a base de dados"
@ -6720,6 +6720,7 @@ msgstr "Sérvio"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6736,7 +6737,7 @@ msgstr "Sérvio"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6820,15 +6821,18 @@ msgstr ""
msgid "Portugese"
msgstr "Português"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Saltar o artigo duplicado: %s"

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 08:30+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:31+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Romanian <ro@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "Nu face absolut nimic"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "Nu face absolut nimic"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -118,6 +118,14 @@ msgstr "Bază"
msgid "File type"
msgstr "Tip de fișier"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:182
msgid "Metadata reader"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:209
msgid "Metadata writer"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:12
msgid ""
"Follow all local links in an HTML file and create a ZIP file containing all "
@ -128,10 +136,55 @@ msgstr ""
"care conţine toate fişierele legate. Acest plugin este rulat ori de câte ori "
"adăugaţi un fişier HTML în bibliotecă."
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:32
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:43
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:53
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:64
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:74
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:84
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:94
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:105
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:126
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:136
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:147
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:157
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:167
msgid "Read metadata from %s files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:177
msgid "Extract cover from comic files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:197
msgid "Read metadata from ebooks in ZIP archives"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:207
msgid "Read metadata from ebooks in RAR archives"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Plugin-uri instalate"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:30
msgid "Local plugin customization"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:31
msgid "Disabled plugins"
msgstr "Plugin-uri dezactivate"
@ -140,11 +193,33 @@ msgstr "Plugin-uri dezactivate"
msgid "No valid plugin found in "
msgstr "Nu a fost găsit niciun plugin valid în "
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:192
msgid "Initialization of plugin %s failed with traceback:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:275
msgid "Add a plugin by specifying the path to the zip file containing it."
msgstr ""
"Adaugă un plugin prin specificarea căii către fişierul zip ce îl conţine."
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:277
msgid "Remove a custom plugin by name. Has no effect on builtin plugins"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:279
msgid ""
"Customize plugin. Specify name of plugin and customization string separated "
"by a comma."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:281
msgid "List all installed plugins"
msgstr "Listează toate plugin-urile instalate"
@ -206,14 +281,54 @@ msgstr ""
"este utilizat pentru restricţii specifice dispozitivului pe EPUB. Variantele "
"disponibile sunt: "
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:113
msgid ""
"Either the path to a CSS stylesheet or raw CSS. This CSS will override any "
"existing CSS declarations in the source files."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:117
msgid "Control auto-detection of document structure."
msgstr "Controlează auto-detecţia structurii documentului"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:122
msgid ""
"An XPath expression to detect chapter titles. The default is to consider "
"<h1> or\n"
"<h2> tags that contain the words \"chapter\",\"book\",\"section\" or "
"\"part\" as chapter titles as \n"
"well as any tags that have class=\"chapter\". \n"
"The expression used must evaluate to a list of elements. To disable chapter "
"detection,\n"
"use the expression \"/\". See the XPath Tutorial in the calibre User Manual "
"for further\n"
"help on using this feature.\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:132
msgid ""
"Specify how to mark detected chapters. A value of \"pagebreak\" will insert "
"page breaks before chapters. A value of \"rule\" will insert a line before "
"chapters. A value of \"none\" will disable chapter marking and a value of "
"\"both\" will use both page breaks and lines to mark chapters."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:139
msgid "Path to the cover to be used for this book"
msgstr "Calea către coperta care să fie utilizată pentru această carte"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:142
msgid ""
"Use the cover detected from the source file in preference to the specified "
"cover."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:145
msgid ""
"Remove the first image from the input ebook. Useful if the first image in "
"the source file is a cover and you are specifying an external cover."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:149
msgid ""
"Turn off splitting at page breaks. Normally, input files are automatically "
@ -230,6 +345,19 @@ msgstr ""
"marcatori de sfârşit de pagină, ar trebui să dezactivaţi împărţirea după "
"aceşti marcatori."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:157
msgid ""
"XPath expression to detect page boundaries for building a custom pagination "
"map, as used by AdobeDE. Default is not to build an explicit pagination map."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:161
msgid ""
"XPath expression to find the name of each page in the pagination map "
"relative to its boundary element. Default is to number all pages staring "
"with 1."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:165
msgid ""
"Control the automatic generation of a Table of Contents. If an OPF file is "
@ -286,6 +414,13 @@ msgstr ""
"cuprins la nivelul doi. Fiecare intrare este adăugată sub intrarea "
"precedentă de nivel unu."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:188
msgid ""
"XPath expression that specifies all tags that should be added to the Table "
"of Contents at level three. Each entry is added under the previous level two "
"entry."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:192
msgid ""
"Path to a .ncx file that contains the table of contents to use for this "
@ -298,6 +433,13 @@ msgstr ""
"directorul în care este plasat. Vezi http://www.niso.org/workrooms/daisy/Z39-"
"86-2005.html#NCX pentru o privire de ansamblu asupra formatului NCX."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:198
msgid ""
"Normally, if the source file already has a Table of Contents, it is used in "
"preference to the auto-generated one. With this option, the auto-generated "
"one is always used."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:202
msgid "Control page layout"
msgstr "Controlează aşezarea în pagină"
@ -318,6 +460,37 @@ msgstr "Setează marginea stângă în pts. Implicit este %default"
msgid "Set the right margin in pts. Default is %default"
msgstr "Setează marginea dreaptă în pts. Implicit este %default"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:212
msgid ""
"The base font size in pts. Default is %defaultpt. Set to 0 to disable "
"rescaling of fonts."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:215
msgid ""
"Remove spacing between paragraphs. Also sets a indent on paragraphs of "
"1.5em. You can override this by adding p {text-indent: 0cm} to --override-"
"css. Spacing removal will not work if the source file forces inter-paragraph "
"spacing."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:223
msgid ""
"Remove table markup, converting it into paragraphs. This is useful if your "
"source file uses a table to manage layout."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:226
msgid ""
"Preserve the HTML tag structure while splitting large HTML files. This is "
"only neccessary if the HTML files contain CSS that uses sibling selectors. "
"Enabling this greatly slows down processing of large HTML files."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:232
msgid "Print generated OPF file to stdout"
msgstr "Tipăreşte fişierul OPF generat la ieşirea standard"
@ -352,179 +525,6 @@ msgstr ""
msgid "Could not find an ebook inside the archive"
msgstr "Nu a fost găsită o e-carte în arhivă"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:182
msgid "Metadata reader"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:209
msgid "Metadata writer"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:32
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:43
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:53
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:64
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:74
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:84
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:94
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:105
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:116
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:126
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:136
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:147
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:157
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:167
msgid "Read metadata from %s files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:177
msgid "Extract cover from comic files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:197
msgid "Read metadata from ebooks in ZIP archives"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:207
msgid "Read metadata from ebooks in RAR archives"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:218
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:228
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:238
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:248
#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:259
msgid "Set metadata in %s files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:30
msgid "Local plugin customization"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:192
msgid "Initialization of plugin %s failed with traceback:"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:269
msgid ""
" %prog options\n"
"\n"
" Customize calibre by loading external plugins.\n"
" "
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:277
msgid "Remove a custom plugin by name. Has no effect on builtin plugins"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:279
msgid ""
"Customize plugin. Specify name of plugin and customization string separated "
"by a comma."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:113
msgid ""
"Either the path to a CSS stylesheet or raw CSS. This CSS will override any "
"existing CSS declarations in the source files."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:122
msgid ""
"An XPath expression to detect chapter titles. The default is to consider "
"<h1> or\n"
"<h2> tags that contain the words \"chapter\",\"book\",\"section\" or "
"\"part\" as chapter titles as \n"
"well as any tags that have class=\"chapter\". \n"
"The expression used must evaluate to a list of elements. To disable chapter "
"detection,\n"
"use the expression \"/\". See the XPath Tutorial in the calibre User Manual "
"for further\n"
"help on using this feature.\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:132
msgid ""
"Specify how to mark detected chapters. A value of \"pagebreak\" will insert "
"page breaks before chapters. A value of \"rule\" will insert a line before "
"chapters. A value of \"none\" will disable chapter marking and a value of "
"\"both\" will use both page breaks and lines to mark chapters."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:142
msgid ""
"Use the cover detected from the source file in preference to the specified "
"cover."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:145
msgid ""
"Remove the first image from the input ebook. Useful if the first image in "
"the source file is a cover and you are specifying an external cover."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:157
msgid ""
"XPath expression to detect page boundaries for building a custom pagination "
"map, as used by AdobeDE. Default is not to build an explicit pagination map."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:161
msgid ""
"XPath expression to find the name of each page in the pagination map "
"relative to its boundary element. Default is to number all pages staring "
"with 1."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:188
msgid ""
"XPath expression that specifies all tags that should be added to the Table "
"of Contents at level three. Each entry is added under the previous level two "
"entry."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:198
msgid ""
"Normally, if the source file already has a Table of Contents, it is used in "
"preference to the auto-generated one. With this option, the auto-generated "
"one is always used."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:212
msgid ""
"The base font size in pts. Default is %defaultpt. Set to 0 to disable "
"rescaling of fonts."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:215
msgid ""
"Remove spacing between paragraphs. Also sets a indent on paragraphs of "
"1.5em. You can override this by adding p {text-indent: 0cm} to --override-"
"css. Spacing removal will not work if the source file forces inter-paragraph "
"spacing."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:221
msgid "Do not force text to be justified in output."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:223
msgid ""
"Remove table markup, converting it into paragraphs. This is useful if your "
"source file uses a table to manage layout."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:226
msgid ""
"Preserve the HTML tag structure while splitting large HTML files. This is "
"only neccessary if the HTML files contain CSS that uses sibling selectors. "
"Enabling this greatly slows down processing of large HTML files."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/from_html.py:262
msgid ""
"%prog [options] file.html|opf\n"
@ -664,7 +664,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -679,7 +679,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1635,11 +1635,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3799,9 +3799,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5626,20 +5626,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6080,6 +6080,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6096,7 +6097,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6180,15 +6181,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre 0.4.55\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 07:27+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:31+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: American English <kde-i18n-doc@lists.kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:29+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Poedit-Country: RUSSIAN FEDERATION\n"
"X-Poedit-Language: Russian\n"
@ -67,7 +67,7 @@ msgstr "Абсолютно ничего не делать"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -98,15 +98,15 @@ msgstr "Абсолютно ничего не делать"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -710,7 +710,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Выходная директория. По умолчанию текущая директория."
@ -727,7 +727,7 @@ msgid "Useful for debugging."
msgstr "Использовать для отладки."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB книга создана в"
@ -1861,11 +1861,11 @@ msgstr "Загрузка: rb-meta file.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Создание Mobipocket файла из EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] myebook.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Сырой MOBI HTML сохранен в"
@ -4120,9 +4120,9 @@ msgstr "Добавить нужный источник новостей"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Новости"
@ -6132,20 +6132,20 @@ msgstr ""
"\n"
"Для справки: %%prog команда --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Копирование книг в %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Копирование <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Миграция старой базы данных в %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Сжатие базы данных"
@ -6635,6 +6635,7 @@ msgstr "Сербский"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6651,7 +6652,7 @@ msgstr "Сербский"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6735,15 +6736,18 @@ msgstr "Боснийский"
msgid "Portugese"
msgstr "Португальский"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Ковид Гоял"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Ковид Гоял"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Пропуск статей-дублей: %s"

View File

@ -7,270 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 08:35+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:32+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Slovak <sk@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:29+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:157
msgid ""
"XPath expression to detect page boundaries for building a custom pagination "
"map, as used by AdobeDE. Default is not to build an explicit pagination map."
msgstr ""
"Výraz XPath pre rozoznanie hranice strany pre vytvorenie mapy strán, tak ako "
"je použitý v AdobeDE. Prednastavená hodnota je nevytvárať explicitnú mapu "
"strán."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:161
msgid ""
"XPath expression to find the name of each page in the pagination map "
"relative to its boundary element. Default is to number all pages staring "
"with 1."
msgstr ""
"Výraz XPath pre zistenie mena každej strany v mape strán vo vzťahu k jej "
"hraničnému prvku. Prednastavená hodnota je číslovať všetky strany od 1."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:188
msgid ""
"XPath expression that specifies all tags that should be added to the Table "
"of Contents at level three. Each entry is added under the previous level two "
"entry."
msgstr ""
"Výraz XPath ktorý špecifikuje všetky návestia (tagy) ktoré majú byť pridané "
"do Obsahu na úrovni tri. Každá hodnota je zadaná pod existujúcou hodnotou "
"úrovne tri."
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:421
msgid "Choose format to send to device"
msgstr "Vyberte formát na poslanie do zariadenia"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:515
msgid ""
"<p>You can control how calibre detects page boundaries using a XPath "
"expression. To learn how to use XPath expressions see the <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a>. The page boundaries are useful only if you want a mapping from "
"pages in a paper book, to locations in the e-book. This controls where Adobe "
"Digital Editions displays the page numbers in the right margin.</p>"
msgstr ""
"<p>Pomocou XPath výrazu môžte ovplyvniť ako Calibre určuje hranice strán. "
"Aby ste sa dozvedeli o použití XPath výrazov, navštívte <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a>. Hranice strán sú užitočné iba keď chcete namapovať strany z "
"papierovej knihy na presné umiestnenie v e-knihe. Toto určí kde Adobe "
"Digital Editions zobrazí čísla strán na pravom okraji strany.</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:516
msgid "&Boundary XPath:"
msgstr "&Hraničná XPath:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:517
msgid "&Name XPath:"
msgstr "&Názov XPath:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:519
msgid ""
"<p>You can control how calibre detects chapters using a XPath expression. To "
"learn how to use XPath expressions see the <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a></p>"
msgstr ""
"<p>Pomocou XPath výrazu môžte ovplyvniť ako Calibre určuje hranice strán. "
"Aby ste sa dozvedeli o použití XPath výrazov, navštívte <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a>.</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:258
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:341
msgid "No preprocessing"
msgstr "Žiaden pre-processing."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:173
msgid "at"
msgstr "na"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Z"
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" "
"\"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style "
"type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'DejaVu Sans'; font-size:10pt; "
"font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Set a regular expression "
"pattern to use when trying to guess ebook metadata from filenames. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">A <a "
"href=\"http://docs.python.org/lib/re-syntax.html\"><span style=\" text-"
"decoration: underline; color:#0000ff;\">reference</span></a> on the syntax "
"of regular expressions is available.</p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Use the <span style=\" "
"font-weight:600;\">Test</span> functionality below to test your regular "
"expression on a few sample filenames. The group names for the various "
"metadata entries are documented in tooltips.</p></body></html>"
msgstr ""
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" "
"\"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style "
"type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'DejaVu Sans'; font-size:10pt; "
"font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Zadajte Regulárny výraz "
"ktorý sa použije na odhadnutie metadát z e-knihy z názvu súboru. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">K dispozícii je <a "
"href=\"http://docs.python.org/lib/re-syntax.html\"><span style=\" text-"
"decoration: underline; color:#0000ff;\">Referencia</span></a> na syntax "
"Regulárnych výrazov.</p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Použite <span style=\" "
"font-weight:600;\">Test</span> test funkcionalitu tu dole aby ste otestovali "
"váš relulárny výraz na vzorke niekoľkých názvov súborov. Skupinové mená pre "
"jednotlivé metadáta sú dokumentované v bublinovej nápovede</p></body></html>"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:207
msgid "/Unknown"
msgstr "/Neznámy"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:153
msgid "toolBar"
msgstr "Panel nástrojov"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:496
msgid ""
"%prog export [options] ids\n"
"\n"
"Export the books specified by ids (a comma separated list) to the "
"filesystem.\n"
"The export operation saves all formats of the book, its cover and metadata "
"(in\n"
"an opf file). You can get id numbers from the list command.\n"
msgstr ""
"%prog export [options] ids\n"
"\n"
"Exportujte knihy špecifikované pomocou ids (zoznam oddelený čiarkami) na "
"súborový systém.\n"
"Operácia exportu uloží všetky formáty knihy, obrázok obalu knihy a metadáta "
"\n"
"(v súbore opf). ID čísla môžte distiť pomocou príkazu list.\n"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:33
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:90
msgid ""
"Specify a list of feeds to download. For example: \n"
"\"['http://feeds.newsweek.com/newsweek/TopNews', "
"'http://feeds.newsweek.com/headlines/politics']\"\n"
"If you specify this option, any argument to %prog is ignored and a default "
"recipe is used to download the feeds."
msgstr ""
"Zadajte zoznam \"feedov\" na stiahnutie. Napríklad:\n"
"\"['http://feeds.newsweek.com/newsweek/TopNews', "
"'http://feeds.newsweek.com/headlines/politics']\"\n"
"Ak využijetre túto voľbu, akýkoľvek argument pre %prog je ignorovaný a "
"prednastavený recept je určený aby stiahol \"feed-y\""
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:37
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:94
msgid "Be more verbose while processing."
msgstr "Použi viac hlášok pri spracovaní"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:51
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:101
msgid ""
"Number of levels of links to follow on webpages that are linked to from "
"feeds. Defaul %default"
msgstr ""
"Počet úrovní odkazov ktoré sa budú nasledovať na stránkach, ktoré sú "
"prilinkované vo feedoch. Prednastavená hodnota %default"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:53
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:103
msgid ""
"The directory in which to store the downloaded feeds. Defaults to the "
"current directory."
msgstr ""
"Adresár kam sa ukladajú stiahnuté feedy. Prednastavená hodnota je aktuálny "
"adresár."
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:59
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:109
msgid ""
"Useful for recipe development. Forces max_articles_per_feed to 2 and "
"downloads at most 2 feeds."
msgstr ""
"Užitečné na vývoj (testovanie pri vývoji) receptov. Natvrdo nastaví hodnotu "
"max_articles_per_feed (max. článkov pre feed) na 2 a stiahne najviac 2 feedy."
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:63
msgid ""
"%%prog [options] ARG\n"
"\n"
"%%prog parses an online source of articles, like an RSS or ATOM feed and \n"
"fetches the article contents organized in a nice hierarchy.\n"
"\n"
"ARG can be one of:\n"
"\n"
"file name - %%prog will try to load a recipe from the file\n"
"\n"
"builtin recipe title - %%prog will load the builtin recipe and use it to "
"fetch the feed. For e.g. Newsweek or \"The BBC\" or \"The New York Times\"\n"
"\n"
"recipe as a string - %%prog will load the recipe directly from the string "
"arg.\n"
"\n"
"Available builtin recipes are:\n"
"%s\n"
msgstr ""
"%%prog [options] ARG\n"
"\n"
"%%prog spracuje on-line zdroj článkov, ako napríklad RSS alebo ATOM feed a\n"
"stiahne obsah článku zorganizovaný v peknej hierarchii.\n"
"\n"
"ARG môže byť jeden z:\n"
"\n"
"názov súboru - %%prog sa pokúsi načítať recept zo súboru\n"
"\n"
"názov receptu zabudovaného v Calibre - %%prog načíta zabudovaný recept a "
"použije ho n astiahnutie feedu.. Pre napr. Newsweek alebo \"The BBC\" alebo "
"\"The New York Times\"\n"
"\n"
"recept ako reťazac - %%prog načíta recept priamo z reťazca.\n"
"\n"
"K dispozícii sú nasledujúce zabudované recepty:\n"
"%s\n"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_republica.py:6
msgid "Italian"
msgstr "Taliančina"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Preskakujem duplicitný článok: %s"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:88
msgid "Skipping filtered article: %s"
msgstr "Preskakujem odfiltrovaný článok: %s"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr "Nerobí vôbec nič"
@ -317,7 +63,7 @@ msgstr "Nerobí vôbec nič"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -348,15 +94,15 @@ msgstr "Nerobí vôbec nič"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -613,6 +359,24 @@ msgstr ""
"Rozdeľovanie samotné je však dosť náročné a ak vstupná kniha obsahuje veľmi "
"veľké množstvo zalomení strán, mali by ste rozdeľovanie vypnúť."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:157
msgid ""
"XPath expression to detect page boundaries for building a custom pagination "
"map, as used by AdobeDE. Default is not to build an explicit pagination map."
msgstr ""
"Výraz XPath pre rozoznanie hranice strany pre vytvorenie mapy strán, tak ako "
"je použitý v AdobeDE. Prednastavená hodnota je nevytvárať explicitnú mapu "
"strán."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:161
msgid ""
"XPath expression to find the name of each page in the pagination map "
"relative to its boundary element. Default is to number all pages staring "
"with 1."
msgstr ""
"Výraz XPath pre zistenie mena každej strany v mape strán vo vzťahu k jej "
"hraničnému prvku. Prednastavená hodnota je číslovať všetky strany od 1."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:165
msgid ""
"Control the automatic generation of a Table of Contents. If an OPF file is "
@ -665,6 +429,16 @@ msgstr ""
"Výraz XPath určujúci tagy, ktoré sa majú pridať do obsahu na druhej úrovni. "
"Každý záznam bude vložený pod príslušný prvoúrovňový záznam."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:188
msgid ""
"XPath expression that specifies all tags that should be added to the Table "
"of Contents at level three. Each entry is added under the previous level two "
"entry."
msgstr ""
"Výraz XPath ktorý špecifikuje všetky návestia (tagy) ktoré majú byť pridané "
"do Obsahu na úrovni tri. Každá hodnota je zadaná pod existujúcou hodnotou "
"úrovne tri."
#: /home/kovid/work/calibre/src/calibre/ebooks/epub/__init__.py:192
msgid ""
"Path to a .ncx file that contains the table of contents to use for this "
@ -933,7 +707,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [možnosti] LITsúbor"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Výstupný adresár. Štandardne aktuálny pracovný adresár."
@ -949,7 +723,7 @@ msgid "Useful for debugging."
msgstr "Užitočné pri hľadaní chýb v programe."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB elektronická kniha bude vytvorená v"
@ -2088,11 +1862,11 @@ msgstr "Použitie: rb-meta súbor.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr "Vytváranie Mobipocket súboru z EPUB..."
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [možnosti] kniha.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Neupravené MOBI HTML uložené do"
@ -2496,6 +2270,10 @@ msgstr ""
msgid "selected to send"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:421
msgid "Choose format to send to device"
msgstr "Vyberte formát na poslanie do zariadenia"
#: /home/kovid/work/calibre/src/calibre/gui2/device.py:428
msgid "No device"
msgstr ""
@ -3658,10 +3436,46 @@ msgstr "Nerozdeľovať na &zalomeniach strán"
msgid "&Page map"
msgstr "&Mapa stránkovania"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:515
msgid ""
"<p>You can control how calibre detects page boundaries using a XPath "
"expression. To learn how to use XPath expressions see the <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a>. The page boundaries are useful only if you want a mapping from "
"pages in a paper book, to locations in the e-book. This controls where Adobe "
"Digital Editions displays the page numbers in the right margin.</p>"
msgstr ""
"<p>Pomocou XPath výrazu môžte ovplyvniť ako Calibre určuje hranice strán. "
"Aby ste sa dozvedeli o použití XPath výrazov, navštívte <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a>. Hranice strán sú užitočné iba keď chcete namapovať strany z "
"papierovej knihy na presné umiestnenie v e-knihe. Toto určí kde Adobe "
"Digital Editions zobrazí čísla strán na pravom okraji strany.</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:516
msgid "&Boundary XPath:"
msgstr "&Hraničná XPath:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:517
msgid "&Name XPath:"
msgstr "&Názov XPath:"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:518
msgid "Automatic &chapter detection"
msgstr "Automatické rozoznávanie &kapitol"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:519
msgid ""
"<p>You can control how calibre detects chapters using a XPath expression. To "
"learn how to use XPath expressions see the <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a></p>"
msgstr ""
"<p>Pomocou XPath výrazu môžte ovplyvniť ako Calibre určuje hranice strán. "
"Aby ste sa dozvedeli o použití XPath výrazov, navštívte <a "
"href=\"http://calibre.kovidgoyal.net/user_manual/xpath.html\">XPath "
"tutorial</a>.</p>"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/epub_ui.py:520
msgid "&XPath:"
msgstr "Výraz &XPath:"
@ -3807,6 +3621,11 @@ msgstr "Previesť %s do formátu LRF"
msgid "Set conversion defaults"
msgstr "Štandardné nastavenie prevodu"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:258
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:341
msgid "No preprocessing"
msgstr "Žiaden pre-processing."
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/lrf_single.py:261
msgid ""
"Preprocess the file before converting to LRF. This is useful if you know "
@ -4307,9 +4126,9 @@ msgstr "Pridať vlastný zdroj správ"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr "Správy"
@ -4343,6 +4162,10 @@ msgstr "&Naplánovať preberanie:"
msgid "Every "
msgstr "Každých "
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:173
msgid "at"
msgstr "na"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:175
msgid ""
"Interval at which to download this recipe. A value of zero means that the "
@ -4381,6 +4204,11 @@ msgstr ""
msgid "Delete downloaded news older than "
msgstr "Mazať správy staršie ako "
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:35
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:96
msgid "Form"
msgstr "Z"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:36
msgid "contains"
msgstr "obsahuje"
@ -4689,6 +4517,50 @@ msgstr ""
msgid "Recipe source code (python)"
msgstr "Zdrojový kód receptu (python)"
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:97
msgid ""
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" "
"\"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style "
"type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'DejaVu Sans'; font-size:10pt; "
"font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Set a regular expression "
"pattern to use when trying to guess ebook metadata from filenames. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">A <a "
"href=\"http://docs.python.org/lib/re-syntax.html\"><span style=\" text-"
"decoration: underline; color:#0000ff;\">reference</span></a> on the syntax "
"of regular expressions is available.</p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Use the <span style=\" "
"font-weight:600;\">Test</span> functionality below to test your regular "
"expression on a few sample filenames. The group names for the various "
"metadata entries are documented in tooltips.</p></body></html>"
msgstr ""
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" "
"\"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style "
"type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'DejaVu Sans'; font-size:10pt; "
"font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Zadajte Regulárny výraz "
"ktorý sa použije na odhadnutie metadát z e-knihy z názvu súboru. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">K dispozícii je <a "
"href=\"http://docs.python.org/lib/re-syntax.html\"><span style=\" text-"
"decoration: underline; color:#0000ff;\">Referencia</span></a> na syntax "
"Regulárnych výrazov.</p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-"
"right:0px; -qt-block-indent:0; text-indent:0px;\">Použite <span style=\" "
"font-weight:600;\">Test</span> test funkcionalitu tu dole aby ste otestovali "
"váš relulárny výraz na vzorke niekoľkých názvov súborov. Skupinové mená pre "
"jednotlivé metadáta sú dokumentované v bublinovej nápovede</p></body></html>"
#: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:104
msgid "Regular &expression"
msgstr "Regulárny &výraz"
@ -5768,6 +5640,10 @@ msgstr "Prejsť na..."
msgid "Position in book"
msgstr "Pozícia v knihe"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:207
msgid "/Unknown"
msgstr "/Neznámy"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:212
msgid "Go to a reference. To get reference numbers, use the reference mode."
msgstr "Prejsť na referenciu. Čísla referencií získate v režime referencií."
@ -5845,6 +5721,10 @@ msgstr ""
msgid "Ebook Viewer"
msgstr "Prehliadač elektronických kníh"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:153
msgid "toolBar"
msgstr "Panel nástrojov"
#: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:156
msgid "Next page"
msgstr "Nasledujúca strana"
@ -6208,6 +6088,24 @@ msgstr ""
msgid "You must specify an id and a metadata file"
msgstr "Musíte zadať identifikačný kód a súbor s metadátami"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:496
msgid ""
"%prog export [options] ids\n"
"\n"
"Export the books specified by ids (a comma separated list) to the "
"filesystem.\n"
"The export operation saves all formats of the book, its cover and metadata "
"(in\n"
"an opf file). You can get id numbers from the list command.\n"
msgstr ""
"%prog export [options] ids\n"
"\n"
"Exportujte knihy špecifikované pomocou ids (zoznam oddelený čiarkami) na "
"súborový systém.\n"
"Operácia exportu uloží všetky formáty knihy, obrázok obalu knihy a metadáta "
"\n"
"(v súbore opf). ID čísla môžte distiť pomocou príkazu list.\n"
#: /home/kovid/work/calibre/src/calibre/library/cli.py:504
msgid "Export all books in database, ignoring the list of ids."
msgstr ""
@ -6252,21 +6150,21 @@ msgstr ""
"\n"
"Informácie o jednotlivých príkazoch: %%prog príkaz --help\n"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr "<p>Kopírujem knihy do %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopírujem <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
"<p>Migrujem starú databázu do knižnice elektronických kníh v %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Zmenšujem databázu"
@ -6433,6 +6331,26 @@ msgstr ""
msgid "Do not download CSS stylesheets."
msgstr "Nepreberať kaskádové štýly."
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:33
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:90
msgid ""
"Specify a list of feeds to download. For example: \n"
"\"['http://feeds.newsweek.com/newsweek/TopNews', "
"'http://feeds.newsweek.com/headlines/politics']\"\n"
"If you specify this option, any argument to %prog is ignored and a default "
"recipe is used to download the feeds."
msgstr ""
"Zadajte zoznam \"feedov\" na stiahnutie. Napríklad:\n"
"\"['http://feeds.newsweek.com/newsweek/TopNews', "
"'http://feeds.newsweek.com/headlines/politics']\"\n"
"Ak využijetre túto voľbu, akýkoľvek argument pre %prog je ignorovaný a "
"prednastavený recept je určený aby stiahol \"feed-y\""
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:37
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:94
msgid "Be more verbose while processing."
msgstr "Použi viac hlášok pri spracovaní"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:39
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:96
msgid ""
@ -6451,6 +6369,24 @@ msgstr "Prihlasovacie meno pre zdroje vyžadujúce prihlásenie."
msgid "Password for sites that require a login to access content."
msgstr "Prihlasovacie heslo pre zdroje vyžadujúce prihlásenie."
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:51
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:101
msgid ""
"Number of levels of links to follow on webpages that are linked to from "
"feeds. Defaul %default"
msgstr ""
"Počet úrovní odkazov ktoré sa budú nasledovať na stránkach, ktoré sú "
"prilinkované vo feedoch. Prednastavená hodnota %default"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:53
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:103
msgid ""
"The directory in which to store the downloaded feeds. Defaults to the "
"current directory."
msgstr ""
"Adresár kam sa ukladajú stiahnuté feedy. Prednastavená hodnota je aktuálny "
"adresár."
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:55
msgid "Don't show the progress bar"
msgstr "Nezobrazovať indikátor postupu"
@ -6460,6 +6396,53 @@ msgstr "Nezobrazovať indikátor postupu"
msgid "Very verbose output, useful for debugging."
msgstr "Veľmi podrobný výstup, užitočný pri hľadaní chýb v programe"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:59
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:109
msgid ""
"Useful for recipe development. Forces max_articles_per_feed to 2 and "
"downloads at most 2 feeds."
msgstr ""
"Užitečné na vývoj (testovanie pri vývoji) receptov. Natvrdo nastaví hodnotu "
"max_articles_per_feed (max. článkov pre feed) na 2 a stiahne najviac 2 feedy."
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:63
msgid ""
"%%prog [options] ARG\n"
"\n"
"%%prog parses an online source of articles, like an RSS or ATOM feed and \n"
"fetches the article contents organized in a nice hierarchy.\n"
"\n"
"ARG can be one of:\n"
"\n"
"file name - %%prog will try to load a recipe from the file\n"
"\n"
"builtin recipe title - %%prog will load the builtin recipe and use it to "
"fetch the feed. For e.g. Newsweek or \"The BBC\" or \"The New York Times\"\n"
"\n"
"recipe as a string - %%prog will load the recipe directly from the string "
"arg.\n"
"\n"
"Available builtin recipes are:\n"
"%s\n"
msgstr ""
"%%prog [options] ARG\n"
"\n"
"%%prog spracuje on-line zdroj článkov, ako napríklad RSS alebo ATOM feed a\n"
"stiahne obsah článku zorganizovaný v peknej hierarchii.\n"
"\n"
"ARG môže byť jeden z:\n"
"\n"
"názov súboru - %%prog sa pokúsi načítať recept zo súboru\n"
"\n"
"názov receptu zabudovaného v Calibre - %%prog načíta zabudovaný recept a "
"použije ho n astiahnutie feedu.. Pre napr. Newsweek alebo \"The BBC\" alebo "
"\"The New York Times\"\n"
"\n"
"recept ako reťazac - %%prog načíta recept priamo z reťazca.\n"
"\n"
"K dispozícii sú nasledujúce zabudované recepty:\n"
"%s\n"
#: /home/kovid/work/calibre/src/calibre/web/feeds/main.py:87
msgid ""
"Options to control web2disk (used to fetch websites linked from feeds)"
@ -6672,6 +6655,7 @@ msgstr "Srbština"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6688,7 +6672,7 @@ msgstr "Srbština"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6729,6 +6713,11 @@ msgstr "Angličtina"
msgid "Spanish"
msgstr "Španielčina"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_la_republica.py:6
msgid "Italian"
msgstr "Taliančina"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_courrierinternational.py:18
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_cyberpresse.py:9
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:19
@ -6767,11 +6756,26 @@ msgstr ""
msgid "Portugese"
msgstr "Portugalčina"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr "Kovid Goyal"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr "Preskakujem duplicitný článok: %s"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:88
msgid "Skipping filtered article: %s"
msgstr "Preskakujem odfiltrovaný článok: %s"
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_zaobao.py:19
msgid "Chinese"
msgstr ""

View File

@ -6,14 +6,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre 0.4.17\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-16 09:32+0000\n"
"Last-Translator: Ketrin <i_ketrin@mail.ru>\n"
"Language-Team: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:28+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"Generated-By: pygettext.py 1.5\n"
@ -120,7 +120,7 @@ msgstr "Izpiši ustvarjeno NCX datoteko na standardni izhod"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -151,15 +151,15 @@ msgstr "Izpiši ustvarjeno NCX datoteko na standardni izhod"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -632,7 +632,7 @@ msgid "%prog [options] LITFILE"
msgstr "%prog [options] LITFILE"
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr "Izhodni direktorij. Privzet je trenutni direktorij."
@ -647,7 +647,7 @@ msgid "Useful for debugging."
msgstr "Koristno za razhroščevanje."
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr "OEB eknjiga ustvarjena v"
@ -1741,11 +1741,11 @@ msgstr "Uporaba: rb-meta datoteka.rb"
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr "%prog [options] mojaeknjiga.mobi"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr "Neobdelan MOBI HTML shranjen v"
@ -3924,9 +3924,9 @@ msgstr "Dodaj vir novic po meri"
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5859,20 +5859,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr "Kopiram <b>%s</b>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr "<p>Selitev stare podatkovne baze v knjižnico eknjig v %s<br><center>"
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr "Krčim bazo"
@ -6338,6 +6338,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6354,7 +6355,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6438,15 +6439,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 08:05+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:34+0000\n"
"Last-Translator: nicke <niklas.aronsson@gmail.com>\n"
"Language-Team: Swedish <sv@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:29+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr "Gör ingenting"
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr "Gör ingenting"
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -621,7 +621,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -636,7 +636,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1592,11 +1592,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3756,9 +3756,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5583,20 +5583,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6037,6 +6037,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6053,7 +6054,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6137,15 +6138,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,14 +7,14 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 09:22+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:34+0000\n"
"Last-Translator: Kovid Goyal <Unknown>\n"
"Language-Team: Telugu <te@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:40+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:29+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
@ -63,7 +63,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -94,15 +94,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -621,7 +621,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -636,7 +636,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1592,11 +1592,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3756,9 +3756,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5583,20 +5583,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6037,6 +6037,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6053,7 +6054,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6137,15 +6138,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -7,16 +7,20 @@ msgid ""
msgstr ""
"Project-Id-Version: calibre\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-05-16 06:38+0000\n"
"PO-Revision-Date: 2009-05-16 09:23+0000\n"
"POT-Creation-Date: 2009-05-21 15:37+0000\n"
"PO-Revision-Date: 2009-05-21 15:36+0000\n"
"Last-Translator: svv <skrypnychuk@gmail.com>\n"
"Language-Team: Ukrainian <uk@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-05-21 14:41+0000\n"
"X-Launchpad-Export-Date: 2009-05-29 16:29+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:44
#: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:98
#: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:50
@ -59,7 +63,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:61
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:70
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:140
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:661
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:662
#: /home/kovid/work/calibre/src/calibre/ebooks/odt/to_oeb.py:46
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:576
#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:581
@ -90,15 +94,15 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123
#: /home/kovid/work/calibre/src/calibre/library/cli.py:264
#: /home/kovid/work/calibre/src/calibre/library/database.py:916
#: /home/kovid/work/calibre/src/calibre/library/database2.py:498
#: /home/kovid/work/calibre/src/calibre/library/database2.py:510
#: /home/kovid/work/calibre/src/calibre/library/database2.py:895
#: /home/kovid/work/calibre/src/calibre/library/database2.py:930
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1237
#: /home/kovid/work/calibre/src/calibre/library/database2.py:500
#: /home/kovid/work/calibre/src/calibre/library/database2.py:512
#: /home/kovid/work/calibre/src/calibre/library/database2.py:897
#: /home/kovid/work/calibre/src/calibre/library/database2.py:932
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1239
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1419
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1442
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1493
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1241
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1421
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1444
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1495
#: /home/kovid/work/calibre/src/calibre/library/server.py:340
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:28
#: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:31
@ -106,22 +110,14 @@ msgstr ""
msgid "Unknown"
msgstr "Невідомо"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:148
msgid "File type"
msgstr "Тип файла"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Встановлені додатки"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41
msgid "Does absolutely nothing"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:62
msgid "Base"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:148
msgid "File type"
msgstr "Тип файла"
#: /home/kovid/work/calibre/src/calibre/customize/__init__.py:182
msgid "Metadata reader"
msgstr ""
@ -174,6 +170,10 @@ msgstr ""
msgid "Set metadata in %s files"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:28
msgid "Installed plugins"
msgstr "Встановлені додатки"
#: /home/kovid/work/calibre/src/calibre/customize/ui.py:29
msgid "Mapping for filetype plugins"
msgstr ""
@ -621,7 +621,7 @@ msgid "%prog [options] LITFILE"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:895
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:696
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:697
msgid "Output directory. Defaults to current directory."
msgstr ""
@ -636,7 +636,7 @@ msgid "Useful for debugging."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/lit/reader.py:912
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:720
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:721
msgid "OEB ebook created in"
msgstr ""
@ -1592,11 +1592,11 @@ msgstr ""
msgid "Creating Mobipocket file from EPUB..."
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:694
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:695
msgid "%prog [options] myebook.mobi"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:718
#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:719
msgid "Raw MOBI HTML saved in"
msgstr ""
@ -3756,9 +3756,9 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:466
#: /home/kovid/work/calibre/src/calibre/gui2/tags.py:50
#: /home/kovid/work/calibre/src/calibre/library/database2.py:839
#: /home/kovid/work/calibre/src/calibre/library/database2.py:843
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1158
#: /home/kovid/work/calibre/src/calibre/library/database2.py:841
#: /home/kovid/work/calibre/src/calibre/library/database2.py:845
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1160
msgid "News"
msgstr ""
@ -5583,20 +5583,20 @@ msgid ""
"For help on an individual command: %%prog command --help\n"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1262
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1264
msgid "<p>Copying books to %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1275
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1384
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1277
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1386
msgid "Copying <b>%s</b>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1355
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1357
msgid "<p>Migrating old database to ebook library in %s<br><center>"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1401
#: /home/kovid/work/calibre/src/calibre/library/database2.py:1403
msgid "Compacting database"
msgstr ""
@ -6037,6 +6037,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_seattle_times.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_security_watch.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_shacknews.py:10
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_slashdot.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_smh.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_soldiers.py:26
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_spiegel_int.py:17
@ -6053,7 +6054,7 @@ msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_themarketticker.py:17
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_theonion.py:20
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_time_magazine.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:19
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_times_online.py:25
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_tomshardware.py:21
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_twitchfilms.py:22
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_upi.py:15
@ -6137,15 +6138,18 @@ msgstr ""
msgid "Portugese"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h1.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h2.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_h3.py:15
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_index_hu.py:8
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py:17
msgid "Hungarian"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:12
msgid "Kovid Goyal"
msgstr ""
#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:83
msgid "Skipping duplicated article: %s"
msgstr ""

View File

@ -53,7 +53,7 @@ def get_opts_from_parser(parser, prefix):
for x in do_opt(o): yield x
def send(ans):
pat = re.compile('([^0-9a-zA-Z_./])')
pat = re.compile('([^0-9a-zA-Z_./-])')
for x in sorted(set(ans)):
x = pat.sub(lambda m : '\\'+m.group(1), x)
if x.endswith('\\ '):

View File

@ -54,6 +54,9 @@ def create_man_page(prog, parser):
'http://calibre.kovidgoyal.net/user_manual',
'.PP', '.B Created by '+__author__]
return bz2.compress('\n'.join(lines))
lines = [x if isinstance(x, unicode) else unicode(x, 'utf-8', 'replace') for
x in lines]
return bz2.compress((u'\n'.join(lines)).encode('utf-8'))

View File

@ -27,6 +27,9 @@ PARALLEL_FUNCS = {
'gui_convert' :
('calibre.gui2.convert.gui_conversion', 'gui_convert', 'notification'),
'move_library' :
('calibre.library.move', 'move_library', 'notification'),
'read_metadata' :
('calibre.ebooks.metadata.worker', 'read_metadata_', 'notification'),
@ -36,6 +39,8 @@ PARALLEL_FUNCS = {
'write_pdf_metadata' :
('calibre.utils.podofo.__init__', 'set_metadata_', None),
'write_pdf_first_page' :
('calibre.utils.podofo.__init__', 'write_first_page_', None),
'save_book' :
('calibre.ebooks.metadata.worker', 'save_book', 'notification'),

View File

@ -108,6 +108,40 @@ podofo_PDFDoc_pages_getter(podofo_PDFDoc *self, void *closure) {
return ans;
}
static PyObject *
podofo_PDFDoc_version_getter(podofo_PDFDoc *self, void *closure) {
int version;
try {
version = self->doc->GetPdfVersion();
} catch(const PdfError & err) {
podofo_set_exception(err);
return NULL;
}
switch(version) {
case ePdfVersion_1_0:
return Py_BuildValue("s", "1.0");
case ePdfVersion_1_1:
return Py_BuildValue("s", "1.1");
case ePdfVersion_1_2:
return Py_BuildValue("s", "1.2");
case ePdfVersion_1_3:
return Py_BuildValue("s", "1.3");
case ePdfVersion_1_4:
return Py_BuildValue("s", "1.4");
case ePdfVersion_1_5:
return Py_BuildValue("s", "1.5");
case ePdfVersion_1_6:
return Py_BuildValue("s", "1.6");
case ePdfVersion_1_7:
return Py_BuildValue("s", "1.7");
default:
return Py_BuildValue("");
}
return Py_BuildValue("");
}
static PyObject *
podofo_PDFDoc_delete_pages(podofo_PDFDoc *self, PyObject *args, PyObject *kwargs) {
int first_page, num_pages;
@ -315,6 +349,10 @@ static PyGetSetDef podofo_PDFDoc_getsetters[] = {
(getter)podofo_PDFDoc_pages_getter, NULL,
(char *)"Number of pages in document (read only)",
NULL},
{(char *)"version",
(getter)podofo_PDFDoc_version_getter, NULL,
(char *)"The PDF version (read only)",
NULL},
{NULL} /* Sentinel */
};

View File

@ -1,161 +0,0 @@
#!/usr/bin/env python
__license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal <kovid at kovidgoyal.net>'
'''
CLI for downloading feeds.
'''
import sys, os
from calibre.web.feeds.recipes import get_builtin_recipe, compile_recipe, titles
from calibre.web.fetch.simple import option_parser as _option_parser
from calibre.web.feeds.news import BasicNewsRecipe
from calibre.utils.config import Config, StringConfig
def config(defaults=None):
desc = _('Options to control the fetching of periodical content from the web.')
c = Config('feeds2disk', desc) if defaults is None else StringConfig(defaults, desc)
web2disk = c.add_group('web2disk', _('Customize the download engine'))
web2disk('timeout', ['-t', '--timeout'], default=10.0,
help=_('Timeout in seconds to wait for a response from the server. Default: %default s'),)
web2disk('delay', ['--delay'], default=0,
help=_('Minimum interval in seconds between consecutive fetches. Default is %default s'))
web2disk('encoding', ['--encoding'], default=None,
help=_('The character encoding for the websites you are trying to download. The default is to try and guess the encoding.'))
web2disk('match_regexps', ['--match-regexp'], default=[], action='append',
help=_('Only links that match this regular expression will be followed. This option can be specified multiple times, in which case as long as a link matches any one regexp, it will be followed. By default all links are followed.'))
web2disk('filter_regexps', ['--filter-regexp'], default=[], action='append',
help=_('Any link that matches this regular expression will be ignored. This option can be specified multiple times, in which case as long as any regexp matches a link, it will be ignored.By default, no links are ignored. If both --filter-regexp and --match-regexp are specified, then --filter-regexp is applied first.'))
web2disk('no_stylesheets', ['--dont-download-stylesheets'], action='store_true', default=False,
help=_('Do not download CSS stylesheets.'))
c.add_opt('feeds', ['--feeds'], default=None,
help=_('''Specify a list of feeds to download. For example:
"['http://feeds.newsweek.com/newsweek/TopNews', 'http://feeds.newsweek.com/headlines/politics']"
If you specify this option, any argument to %prog is ignored and a default recipe is used to download the feeds.'''))
c.add_opt('verbose', ['-v', '--verbose'], default=0, action='count',
help=_('''Be more verbose while processing.'''))
c.add_opt('title', ['--title'], default=None,
help=_('The title for this recipe. Used as the title for any ebooks created from the downloaded feeds.'))
c.add_opt('username', ['-u', '--username'], default=None,
help=_('Username for sites that require a login to access content.'))
c.add_opt('password', ['-p', '--password'], default=None,
help=_('Password for sites that require a login to access content.'))
c.add_opt('lrf', ['--lrf'], default=False, action='store_true',
help='Optimize fetching for subsequent conversion to LRF.')
c.add_opt('epub', ['--epub'], default=False, action='store_true',
help='Optimize fetching for subsequent conversion to EPUB.')
c.add_opt('mobi', ['--mobi'], default=False, action='store_true',
help='Optimize fetching for subsequent conversion to MOBI.')
c.add_opt('recursions', ['--recursions'], default=0,
help=_('Number of levels of links to follow on webpages that are linked to from feeds. Defaul %default'))
c.add_opt('output_dir', ['--output-dir'], default='.',
help=_('The directory in which to store the downloaded feeds. Defaults to the current directory.'))
c.add_opt('no_progress_bar', ['--no-progress-bar'], default=False, action='store_true',
help=_("Don't show the progress bar"))
c.add_opt('debug', ['--debug'], action='store_true', default=False,
help=_('Very verbose output, useful for debugging.'))
c.add_opt('test', ['--test'], action='store_true', default=False,
help=_('Useful for recipe development. Forces max_articles_per_feed to 2 and downloads at most 2 feeds.'))
return c
USAGE=_('''\
%%prog [options] ARG
%%prog parses an online source of articles, like an RSS or ATOM feed and
fetches the article contents organized in a nice hierarchy.
ARG can be one of:
file name - %%prog will try to load a recipe from the file
builtin recipe title - %%prog will load the builtin recipe and use it to fetch the feed. For e.g. Newsweek or "The BBC" or "The New York Times"
recipe as a string - %%prog will load the recipe directly from the string arg.
Available builtin recipes are:
%s
''')%(unicode(list(titles))[1:-1])
def option_parser(usage=USAGE):
p = _option_parser(usage=usage)
p.remove_option('--max-recursions')
p.remove_option('--base-dir')
p.remove_option('--verbose')
p.remove_option('--max-files')
p.subsume('WEB2DISK OPTIONS', _('Options to control web2disk (used to fetch websites linked from feeds)'))
p.add_option('--feeds', default=None,
help=_('''Specify a list of feeds to download. For example:
"['http://feeds.newsweek.com/newsweek/TopNews', 'http://feeds.newsweek.com/headlines/politics']"
If you specify this option, any argument to %prog is ignored and a default recipe is used to download the feeds.'''))
p.add_option('--verbose', default=False, action='store_true',
help=_('''Be more verbose while processing.'''))
p.add_option('--title', default=None,
help=_('The title for this recipe. Used as the title for any ebooks created from the downloaded feeds.'))
p.add_option('--username', default=None, help=_('Username for sites that require a login to access content.'))
p.add_option('--password', default=None, help=_('Password for sites that require a login to access content.'))
p.add_option('--lrf', default=False, action='store_true', help='Optimize fetching for subsequent conversion to LRF.')
p.add_option('--recursions', default=0, type='int',
help=_('Number of levels of links to follow on webpages that are linked to from feeds. Defaul %default'))
p.add_option('--output-dir', default=os.getcwd(),
help=_('The directory in which to store the downloaded feeds. Defaults to the current directory.'))
p.add_option('--no-progress-bar', dest='no_progress_bar', default=False, action='store_true',
help=_('Dont show the progress bar'))
p.add_option('--debug', action='store_true', default=False,
help=_('Very verbose output, useful for debugging.'))
p.add_option('--test', action='store_true', default=False,
help=_('Useful for recipe development. Forces max_articles_per_feed to 2 and downloads at most 2 feeds.'))
return p
class RecipeError(Exception):
pass
def run_recipe(opts, recipe_arg, parser, notification=None):
if notification is None:
from calibre.utils.terminfo import TerminalController, ProgressBar
term = TerminalController(sys.stdout)
pb = ProgressBar(term, _('Fetching feeds...'), no_progress_bar=opts.no_progress_bar)
notification = pb.update
recipe = None
if opts.feeds is not None:
recipe = BasicNewsRecipe
else:
try:
if os.access(recipe_arg, os.R_OK):
recipe = compile_recipe(open(recipe_arg).read())
else:
raise Exception('not file')
except:
recipe = get_builtin_recipe(recipe_arg)
if recipe is None:
recipe = compile_recipe(recipe_arg)
if recipe is None:
raise RecipeError(recipe_arg+ ' is an invalid recipe')
recipe = recipe(opts, parser, notification)
if not os.path.exists(recipe.output_dir):
os.makedirs(recipe.output_dir)
recipe.download(for_lrf=True)
return recipe
def main(args=sys.argv, notification=None):
p = option_parser()
opts, args = p.parse_args(args=args[1:])
if len(args) != 1 and opts.feeds is None:
p.print_help()
return 1
recipe_arg = args[0] if len(args) > 0 else None
run_recipe(opts, recipe_arg, p, notification=notification)
return 0
if __name__ == '__main__':
sys.exit(main())

View File

@ -43,7 +43,8 @@ recipe_modules = ['recipe_' + r for r in (
'seattle_times', 'scott_hanselman', 'coding_horror', 'twitchfilms',
'stackoverflow', 'telepolis_artikel', 'zaobao', 'usnews',
'straitstimes', 'index_hu', 'pcworld_hu', 'hrt', 'rts',
'h1', 'h2', 'h3', 'phd_comics', 'woz_die',
'h1', 'h2', 'h3', 'phd_comics', 'woz_die', 'elektrolese',
'climate_progress', 'carta', 'slashdot',
)]
import re, imp, inspect, time, os

View File

@ -0,0 +1,45 @@
__license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal <kovid at kovidgoyal.net>'
'''
Fetch Carta.info.
'''
from calibre.web.feeds.news import BasicNewsRecipe
class Carta(BasicNewsRecipe):
title = u'Carta'
description = 'News about electronic publishing'
__author__ = 'Oliver Niesner'
use_embedded_content = False
timefmt = ' [%a %d %b %Y]'
oldest_article = 7
max_articles_per_feed = 50
no_stylesheets = True
remove_javascript = True
#html2epub_options = 'linearize_tables = True\nbase_font_size2=14'
encoding = 'utf-8'
language = _('German')
remove_tags_after = [dict(name='p', attrs={'class':'tags-blog'})]
remove_tags = [dict(name='p', attrs={'class':'print'}),
dict(name='p', attrs={'class':'tags-blog'}),
dict(name='p', attrs={'class':'mail'}),
dict(name='p', attrs={'style':'text-align: center;'}),
dict(name='p', attrs={'align':'left'}),
dict(name='p', attrs={'class':'date'}),
dict(id='comments'),
dict(id='headerleft'),
dict(id='subnav'),
dict(id='headerright')]
feeds = [ (u'Carta', u'http://feeds2.feedburner.com/carta-standard-rss') ]
def print_version(self, url):
return url + 'print/'

View File

@ -0,0 +1,47 @@
#!/usr/bin/env python
__license__ = 'GPL v3'
__copyright__ = '2009, Darko Miletic <darko.miletic at gmail.com>'
'''
climateprogress.org
'''
from calibre.web.feeds.news import BasicNewsRecipe
from calibre.ebooks.BeautifulSoup import BeautifulSoup, Tag
class ClimateProgress(BasicNewsRecipe):
title = 'Climate Progress'
__author__ = 'Darko Miletic'
description = "An insider's view of climate science, politics and solutions"
publisher = 'Climate Progress'
category = 'news, ecology, climate, blog'
oldest_article = 7
max_articles_per_feed = 100
no_stylesheets = True
use_embedded_content = True
encoding = 'utf-8'
language = _("English")
lang = 'en-US'
direction = 'ltr'
html2lrf_options = [
'--comment', description
, '--category', category
, '--publisher', publisher
]
html2epub_options = 'publisher="' + publisher + '"\ncomments="' + description + '"\ntags="' + category + '"'
remove_tags = [dict(name='a', attrs={'rel':'bookmark'})]
feeds = [(u'Posts', u'http://feeds.feedburner.com/climateprogress/lCrX')]
def preprocess_html(self, soup):
soup.html['lang'] = self.lang
soup.html['dir' ] = self.direction
mlang = Tag(soup,'meta',[("http-equiv","Content-Language"),("content",self.lang)])
mcharset = Tag(soup,'meta',[("http-equiv","Content-Type"),("content","text/html; charset=utf-8")])
soup.head.insert(0,mlang)
soup.head.insert(1,mcharset)
return self.adeify_images(soup)

View File

@ -0,0 +1,35 @@
__license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal <kovid at kovidgoyal.net>'
'''
Fetch elektrolese.
'''
from calibre.web.feeds.news import BasicNewsRecipe
class elektrolese(BasicNewsRecipe):
title = u'elektrolese'
description = 'News about electronic publishing'
__author__ = 'Oliver Niesner'
use_embedded_content = False
timefmt = ' [%a %d %b %Y]'
language = _('German')
oldest_article = 14
max_articles_per_feed = 50
no_stylesheets = True
#html2epub_options = 'linearize_tables = True\nbase_font_size2=14'
encoding = 'utf-8'
remove_tags_after = [dict(id='comments')]
filter_regexps = [r'ad\.doubleclick\.net']
remove_tags = [dict(name='div', attrs={'class':'bannerSuperBanner'}),
dict(id='comments')]
feeds = [ (u'electrolese', u'http://elektrolese.blogspot.com/feeds/posts/default?alt=rss') ]

View File

@ -8,7 +8,7 @@ Fetch heise.
from calibre.web.feeds.news import BasicNewsRecipe
class HeiseDe(BasicNewsRecipe):
class heiseDe(BasicNewsRecipe):
title = 'heise'
description = 'Computernews from Germany'
@ -31,6 +31,7 @@ class HeiseDe(BasicNewsRecipe):
dict(id='bannerzone'),
dict(name='span', attrs={'class':'rsaquo'}),
dict(name='div', attrs={'class':'news_logo'}),
dict(name='div', attrs={'class':'bcadv ISI_IGNORE'}),
dict(name='p', attrs={'class':'news_option'}),
dict(name='p', attrs={'class':'news_navi'}),
dict(name='p', attrs={'class':'news_foren'})]
@ -40,3 +41,5 @@ class HeiseDe(BasicNewsRecipe):

View File

@ -1,53 +1,57 @@
#!/usr/bin/env python
__license__ = 'GPL v3'
__copyright__ = '2008, Darko Miletic <darko.miletic at gmail.com>'
__copyright__ = '2008-2009, Darko Miletic <darko.miletic at gmail.com>'
'''
newyorker.com
'''
from calibre.web.feeds.news import BasicNewsRecipe
from calibre.ebooks.BeautifulSoup import BeautifulSoup, Tag
class NewYorker(BasicNewsRecipe):
title = u'The New Yorker'
title = 'The New Yorker'
__author__ = 'Darko Miletic'
description = 'The best of US journalism'
oldest_article = 7
language = _('English')
max_articles_per_feed = 100
no_stylesheets = False
no_stylesheets = True
use_embedded_content = False
extra_css = '''
.calibre_feed_list {font-size:xx-small}
.calibre_article_list {font-size:xx-small}
.calibre_feed_title {font-size:normal}
.calibre_recipe_title {font-size:normal}
.calibre_feed_description {font-size:xx-small}
'''
publisher = 'Conde Nast Publications'
category = 'news, politics, USA'
encoding = 'cp1252'
keep_only_tags = [
dict(name='div' , attrs={'id':'printbody' })
html2lrf_options = [
'--comment', description
, '--category', category
, '--publisher', publisher
]
html2epub_options = 'publisher="' + publisher + '"\ncomments="' + description + '"\ntags="' + category + '"'
keep_only_tags = [dict(name='div', attrs={'id':'printbody'})]
remove_tags_after = dict(name='div',attrs={'id':'articlebody'})
remove_tags = [
dict(name='div' , attrs={'class':'utils' })
,dict(name='div' , attrs={'id':'bottomFeatures' })
,dict(name='div' , attrs={'id':'articleBottom' })
dict(name='div', attrs={'class':['utils','articleRailLinks','icons'] })
,dict(name='link')
]
feeds = [
(u'The New Yorker', u'http://feeds.newyorker.com/services/rss/feeds/everything.xml')
]
feeds = [(u'The New Yorker', u'http://feeds.newyorker.com/services/rss/feeds/everything.xml')]
def print_version(self, url):
return url + '?printable=true'
def get_article_url(self, article):
return article.get('guid', None)
def postprocess_html(self, soup, x):
body = soup.find('body')
if body:
html = soup.find('html')
if html:
body.extract()
html.insert(-1, body)
html.insert(2, body)
mcharset = Tag(soup,'meta',[("http-equiv","Content-Type"),("content","text/html; charset=utf-8")])
soup.head.insert(1,mcharset)
return soup

View File

@ -109,7 +109,7 @@ class Newsweek(BasicNewsRecipe):
def get_cover_url(self):
cover_url = None
soup = self.index_to_soup(self.INDEX)
soup = self.index_to_soup('http://www.newsweek.com')
link_item = soup.find('div',attrs={'class':'cover-image'})
if link_item and link_item.a and link_item.a.img:
cover_url = link_item.a.img['src']

View File

@ -9,15 +9,15 @@ from calibre.web.feeds.news import BasicNewsRecipe
class Sueddeutsche(BasicNewsRecipe):
title = u'S\xc3\xbcddeutsche'
title = u'S\xfcddeutsche'
description = 'News from Germany'
__author__ = 'Oliver Niesner'
use_embedded_content = False
language = _('German')
timefmt = ' [%d %b %Y]'
oldest_article = 7
max_articles_per_feed = 50
no_stylesheets = True
language = _('German')
encoding = 'iso-8859-15'
remove_javascript = True
@ -89,3 +89,5 @@ class Sueddeutsche(BasicNewsRecipe):
def print_version(self, url):
return url.replace('/text/', '/text/print.html')

View File

@ -6,7 +6,6 @@ Fetch zdnet.
'''
from calibre.web.feeds.news import BasicNewsRecipe
import re
class cdnet(BasicNewsRecipe):
@ -19,15 +18,9 @@ class cdnet(BasicNewsRecipe):
timefmt = ' [%d %b %Y]'
max_articles_per_feed = 40
no_stylesheets = True
encoding = 'iso-8859-1'
encoding = 'latin1'
#preprocess_regexps = \
# [(re.compile(i[0], re.IGNORECASE | re.DOTALL), i[1]) for i in
# [
# (r'<84>', lambda match: ''),
# (r'<93>', lambda match: ''),
# ]
# ]
remove_tags = [dict(id='eyebrows'),
dict(id='header'),
@ -36,12 +29,16 @@ class cdnet(BasicNewsRecipe):
dict(id=''),
dict(name='div', attrs={'class':'banner'}),
dict(name='p', attrs={'class':'tags'}),
dict(name='a', attrs={'href':'http://www.twitter.com/ryanaraine'}),
dict(name='div', attrs={'class':'special1'})]
remove_tags_after = [dict(name='div', attrs={'class':'bloggerDesc clear'})]
feeds = [ ('zdnet', 'http://feeds.feedburner.com/zdnet/security') ]
def preprocess_html(self, soup):
for item in soup.findAll(style=True):
del item['style']
return soup

View File

@ -398,7 +398,7 @@ class RecursiveFetcher(object):
len(re.compile('<!--.*?-->', re.DOTALL).sub('', dsrc).strip()) == 0:
raise ValueError('No content at URL %s'%iurl)
if self.encoding is not None:
dsrc = dsrc.decode(self.encoding, 'ignore')
dsrc = dsrc.decode(self.encoding, 'replace')
else:
dsrc = xml_to_unicode(dsrc, self.verbose)[0]

Some files were not shown because too many files have changed in this diff Show More