Sync to trunk
@ -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)
|
||||
-----------------------------------------------------------
|
||||
|
3
setup.py
@ -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 + [
|
||||
|
||||
|
@ -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())
|
||||
|
@ -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.
|
||||
'''
|
||||
|
@ -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')
|
||||
|
@ -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
|
||||
|
@ -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:
|
||||
|
@ -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;
|
||||
|
@ -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)
|
||||
|
@ -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:
|
||||
|
@ -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:
|
||||
|
@ -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
|
||||
|
@ -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>
|
||||
|
@ -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):
|
||||
|
@ -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)
|
||||
|
||||
|
@ -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', '')
|
||||
|
@ -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()
|
||||
|
@ -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)
|
||||
|
@ -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:
|
||||
|
@ -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)
|
||||
|
@ -172,4 +172,3 @@ class DetectStructure(object):
|
||||
level2.add(text, _href,
|
||||
play_order=self.oeb.toc.next_play_order())
|
||||
|
||||
|
||||
|
@ -20,7 +20,7 @@ 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: '
|
||||
help=(_('Format to use inside the pdb container. Choices are:')+\
|
||||
' %s' % FORMAT_WRITERS.keys())),
|
||||
])
|
||||
|
||||
|
@ -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')
|
||||
|
@ -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`')),
|
||||
|
@ -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()
|
||||
|
@ -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):
|
||||
|
@ -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):
|
||||
|
@ -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')
|
||||
|
@ -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):
|
||||
|
@ -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(',')]
|
||||
|
@ -1,3 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>Form</class>
|
||||
<widget class="QWidget" name="Form">
|
||||
@ -19,6 +20,36 @@
|
||||
<string>Book Cover</string>
|
||||
</property>
|
||||
<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 &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">
|
||||
@ -70,36 +101,6 @@
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="2" column="0" >
|
||||
<widget class="QCheckBox" name="opt_prefer_metadata_cover" >
|
||||
<property name="text" >
|
||||
<string>Use cover from &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>
|
||||
@ -145,7 +146,7 @@
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="author">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -171,7 +172,7 @@
|
||||
<item row="2" column="1">
|
||||
<widget class="QLineEdit" name="author_sort">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -217,7 +218,7 @@
|
||||
<item row="4" column="1">
|
||||
<widget class="QLineEdit" name="tags">
|
||||
<property name="toolTip">
|
||||
<string>Tags categorize the book. This is particularly useful while searching. <br><br>They can be any words or phrases, separated by commas.</string>
|
||||
<string>Tags categorize the book. This is particularly useful while searching. <br><br>They can be any words or phrases, separated by commas.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@ -240,7 +241,7 @@
|
||||
<item row="5" column="1">
|
||||
<widget class="QComboBox" name="series">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||
<horstretch>10</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -263,24 +264,15 @@
|
||||
</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>
|
||||
<widget class="QDoubleSpinBox" name="series_index">
|
||||
<property name="prefix">
|
||||
<string>Book </string>
|
||||
</property>
|
||||
<property name="minimum" >
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>10000</number>
|
||||
<double>9999.989999999999782</double>
|
||||
</property>
|
||||
<property name="value">
|
||||
<double>1.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@ -289,7 +281,7 @@
|
||||
<item>
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy vsizetype="Minimum" hsizetype="Minimum" >
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -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']
|
||||
)
|
||||
|
@ -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)
|
||||
|
||||
|
@ -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 &from:</string>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>email_from</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="email_from">
|
||||
<property name="toolTip">
|
||||
<string><p>This is what will be present in the From: field of emails sent by calibre.<br> 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><p>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 &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 <b>optionally</b> 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>&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>&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>&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>&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>&Show</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_21">
|
||||
<property name="text">
|
||||
<string>&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>&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>&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>&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><p>Remember to leave calibre running as the server only runs as long as calibre is running.
|
||||
<p>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>
|
||||
|
@ -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>
|
||||
|
BIN
src/calibre/gui2/images/news/carta.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
src/calibre/gui2/images/news/elektrolese.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
1712
src/calibre/gui2/images/welcome_wizard.svg
Normal file
After Width: | Height: | Size: 108 KiB |
@ -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):
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
503
src/calibre/gui2/wizard/__init__.py
Normal 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_()
|
||||
|
75
src/calibre/gui2/wizard/device.ui
Normal 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>&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>&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>
|
108
src/calibre/gui2/wizard/finish.ui
Normal 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><h2>Congratulations!</h2> 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><h2>Demo videos</h2>Videos demonstrating the various features of calibre are available <a href="http://calibre.kovidgoyal.net/downloads/videos/">online</a>.</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><h2>User Manual</h2>A User Manual is also available <a href="http://calibre.kovidgoyal.net/user_manual">online</a>.</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>
|
80
src/calibre/gui2/wizard/kindle.ui
Normal 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><p>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 <a href="http://gmail.com">gmail account</a> 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>&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>
|
74
src/calibre/gui2/wizard/library.ui
Normal 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>&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>
|
143
src/calibre/gui2/wizard/send_email.py
Normal 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
|
||||
|
||||
|
||||
|
234
src/calibre/gui2/wizard/send_email.ui
Normal 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 &from:</string>
|
||||
</property>
|
||||
<property name="buddy">
|
||||
<cstring>email_from</cstring>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="email_from">
|
||||
<property name="toolTip">
|
||||
<string><p>This is what will be present in the From: field of emails sent by calibre.<br> 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><p>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 &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 <b>optionally</b> 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>&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>&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>&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>&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>&Show</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="label_21">
|
||||
<property name="text">
|
||||
<string>&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>&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>&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>&Test email</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="../images.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
97
src/calibre/gui2/wizard/stanza.ui
Normal 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><p>If you use the <a href="http://www.lexcycle.com/download">Stanza</a> 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 &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><p>Remember to leave calibre running as the server only runs as long as calibre is running.
|
||||
<p>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>
|
@ -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):
|
||||
'''
|
||||
|
@ -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
|
||||
|
63
src/calibre/library/move.py
Normal 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)
|
||||
|
@ -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
|
||||
@ -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()
|
||||
|
||||
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 25 KiB |
@ -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',
|
||||
|
@ -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'),
|
||||
]:
|
||||
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 29 KiB |
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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 ¬icias 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"
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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 ¬ifications 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 ¬ifications 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 ""
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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"
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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 ""
|
||||
|
@ -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('\\ '):
|
||||
|
@ -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'))
|
||||
|
||||
|
||||
|
@ -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'),
|
||||
|
@ -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 */
|
||||
};
|
||||
|
@ -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())
|
@ -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
|
||||
|
45
src/calibre/web/feeds/recipes/recipe_carta.py
Normal 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/'
|
47
src/calibre/web/feeds/recipes/recipe_climate_progress.py
Normal 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)
|
||||
|
35
src/calibre/web/feeds/recipes/recipe_elektrolese.py
Normal 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') ]
|
||||
|
@ -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):
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -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
|
||||
|
@ -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']
|
||||
|
@ -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')
|
||||
|
||||
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
||||
|
@ -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]
|
||||
|
||||
|