mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-07 10:14:46 -04:00
fb22lrf thanks to Anatoly Shipitsin
This commit is contained in:
parent
d41a9e891a
commit
f87dbae162
8
.bzrignore
Normal file
8
.bzrignore
Normal file
@ -0,0 +1,8 @@
|
||||
*_ui.py
|
||||
src/calibre.egg-info/
|
||||
src/calibre/resources.py
|
||||
src/calibre/gui2/images.qrc
|
||||
src/calibre/gui2/images_rc.py
|
||||
src/calibre/manual/.build/
|
||||
src/calibre/manual/cli/
|
||||
|
@ -12,6 +12,7 @@ from calibre import __appname__
|
||||
RESOURCES = dict(
|
||||
opf_template = '%p/ebooks/metadata/opf.xml',
|
||||
ncx_template = '%p/ebooks/metadata/ncx.xml',
|
||||
fb2_xsl = '%p/ebooks/lrf/fb2/fb2.xsl',
|
||||
)
|
||||
|
||||
def main(args=sys.argv):
|
||||
|
@ -14,4 +14,4 @@ class UnknownFormatError(Exception):
|
||||
|
||||
BOOK_EXTENSIONS = ['lrf', 'lrx', 'rar', 'zip', 'rtf', 'lit', 'txt', 'htm', 'xhtm',
|
||||
'html', 'xhtml', 'epub', 'pdf', 'prc', 'mobi', 'azw',
|
||||
'epub']
|
||||
'epub', 'fb2']
|
||||
|
@ -14,6 +14,7 @@ from calibre.ebooks.lrf.txt.convert_from import process_file as txt2lrf
|
||||
from calibre.ebooks.lrf.html.convert_from import process_file as html2lrf
|
||||
from calibre.ebooks.lrf.epub.convert_from import process_file as epub2lrf
|
||||
from calibre.ebooks.lrf.mobi.convert_from import process_file as mobi2lrf
|
||||
from calibre.ebooks.lrf.fb2.convert_from import process_file as fb22lrf
|
||||
|
||||
def largest_file(files):
|
||||
maxsize, file = 0, None
|
||||
@ -52,7 +53,7 @@ def unhidden_directories(base, listing):
|
||||
if os.path.isdir(os.path.join(base, i)) and not i.startswith('__') and \
|
||||
not i.startswith('.'):
|
||||
ans.append(i)
|
||||
return ans
|
||||
return ans
|
||||
|
||||
def traverse_subdirs(tdir):
|
||||
temp = os.listdir(tdir)
|
||||
@ -85,7 +86,7 @@ def process_file(path, options, logger=None):
|
||||
if logger is None:
|
||||
level = logging.DEBUG if options.verbose else logging.INFO
|
||||
logger = logging.getLogger('any2lrf')
|
||||
setup_cli_handlers(logger, level)
|
||||
setup_cli_handlers(logger, level)
|
||||
if not os.access(path, os.R_OK):
|
||||
logger.critical('Cannot read from %s', path)
|
||||
return 1
|
||||
@ -126,6 +127,8 @@ def process_file(path, options, logger=None):
|
||||
convertor = epub2lrf
|
||||
elif ext in ['mobi', 'prc']:
|
||||
convertor = mobi2lrf
|
||||
elif ext == 'fb2':
|
||||
convertor = fb22lrf
|
||||
if not convertor:
|
||||
raise UnknownFormatError('Coverting from %s to LRF is not supported.'%ext)
|
||||
convertor(path, options, logger)
|
||||
@ -158,4 +161,4 @@ def main(args=sys.argv, logger=None, gui_mode=False):
|
||||
return process_file(args[1], options, logger)
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main())
|
||||
sys.exit(main())
|
||||
|
0
src/calibre/ebooks/lrf/fb2/__init__.py
Normal file
0
src/calibre/ebooks/lrf/fb2/__init__.py
Normal file
91
src/calibre/ebooks/lrf/fb2/convert_from.py
Normal file
91
src/calibre/ebooks/lrf/fb2/convert_from.py
Normal file
@ -0,0 +1,91 @@
|
||||
__license__ = 'GPL v3'
|
||||
__copyright__ = '2008, Anatoly Shipitsin <norguhtar at gmail.com>'
|
||||
"""
|
||||
Convert .fb2 files to .lrf
|
||||
"""
|
||||
import os, sys, tempfile, subprocess, shutil, logging, glob
|
||||
|
||||
from calibre.ptempfile import PersistentTemporaryFile
|
||||
from calibre.ebooks.lrf import option_parser as lrf_option_parser
|
||||
from calibre.ebooks import ConversionError
|
||||
from calibre.ebooks.lrf.html.convert_from import process_file as html_process_file
|
||||
from calibre import setup_cli_handlers, __appname__
|
||||
from calibre.ebooks.BeautifulSoup import BeautifulStoneSoup
|
||||
from calibre.resources import fb2_xsl
|
||||
|
||||
def option_parser():
|
||||
parser = lrf_option_parser(
|
||||
_('''%prog [options] mybook.fb2
|
||||
|
||||
|
||||
%prog converts mybook.fb2 to mybook.lrf'''))
|
||||
parser.add_option('--debug-html-generation', action='store_true', default=False,
|
||||
dest='debug_html_generation', help=_('Print generated HTML to stdout and quit.'))
|
||||
return parser
|
||||
|
||||
|
||||
def generate_html(fb2file, encoding, logger):
|
||||
from lxml import etree
|
||||
tdir = tempfile.mkdtemp(prefix=__appname__+'_')
|
||||
ofile = os.path.join(tdir, 'index.xml')
|
||||
cwd = os.getcwdu()
|
||||
os.chdir(tdir)
|
||||
try:
|
||||
logger.info('Parsing XML...')
|
||||
parser = etree.XMLParser(recover=True, no_network=True)
|
||||
try:
|
||||
doc = etree.parse(fb2file, parser)
|
||||
except:
|
||||
raise
|
||||
logger.info('Parsing failed. Trying to clean up XML...')
|
||||
soup = BeautifulStoneSoup(open(fb2file, 'rb').read())
|
||||
doc = etree.fromstring(str(soup))
|
||||
logger.info('Converting XML to HTML...')
|
||||
styledoc = etree.fromstring(fb2_xsl)
|
||||
|
||||
transform = etree.XSLT(styledoc)
|
||||
result = transform(doc)
|
||||
html = os.path.join(tdir, 'index.html')
|
||||
f = open(html, 'wb')
|
||||
f.write(transform.tostring(result))
|
||||
f.close()
|
||||
finally:
|
||||
os.chdir(cwd)
|
||||
return html
|
||||
|
||||
def process_file(path, options, logger=None):
|
||||
if logger is None:
|
||||
level = logging.DEBUG if options.verbose else logging.INFO
|
||||
logger = logging.getLogger('fb22lrf')
|
||||
setup_cli_handlers(logger, level)
|
||||
fb2 = os.path.abspath(os.path.expanduser(path))
|
||||
htmlfile = generate_html(fb2, options.encoding, logger)
|
||||
tdir = os.path.dirname(htmlfile)
|
||||
cwd = os.getcwdu()
|
||||
try:
|
||||
if not options.output:
|
||||
ext = '.lrs' if options.lrs else '.lrf'
|
||||
options.output = os.path.abspath(os.path.basename(os.path.splitext(path)[0]) + ext)
|
||||
options.output = os.path.abspath(os.path.expanduser(options.output))
|
||||
os.chdir(tdir)
|
||||
html_process_file(htmlfile, options, logger)
|
||||
finally:
|
||||
os.chdir(cwd)
|
||||
if hasattr(options, 'keep_intermediate_files') and options.keep_intermediate_files:
|
||||
logger.debug('Intermediate files in '+ tdir)
|
||||
else:
|
||||
shutil.rmtree(tdir)
|
||||
|
||||
def main(args=sys.argv, logger=None):
|
||||
parser = option_parser()
|
||||
options, args = parser.parse_args(args)
|
||||
if len(args) != 2:
|
||||
parser.print_help()
|
||||
print
|
||||
print 'No fb2 file specified'
|
||||
return 1
|
||||
process_file(args[1], options, logger)
|
||||
return 0
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main())
|
328
src/calibre/ebooks/lrf/fb2/fb2.xsl
Normal file
328
src/calibre/ebooks/lrf/fb2/fb2.xsl
Normal file
@ -0,0 +1,328 @@
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:fb="http://www.gribuser.ru/xml/fictionbook/2.0">
|
||||
<!--
|
||||
#########################################################################
|
||||
# #
|
||||
# #
|
||||
# copyright 2002 Paul Henry Tremblay #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU #
|
||||
# General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA #
|
||||
# 02111-1307 USA #
|
||||
# #
|
||||
# #
|
||||
#########################################################################
|
||||
|
||||
-->
|
||||
<xsl:output method="xml" encoding="UTF-8"/>
|
||||
<xsl:key name="note-link" match="fb:section" use="@id"/>
|
||||
<xsl:template match="/*">
|
||||
<html>
|
||||
<head>
|
||||
<xsl:if test="fb:description/fb:title-info/fb:lang = 'ru'">
|
||||
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8"/>
|
||||
</xsl:if>
|
||||
<title>
|
||||
<xsl:value-of select="fb:description/fb:title-info/fb:book-title"/>
|
||||
</title>
|
||||
<style type="text/x-oeb1-css">
|
||||
A { color : #0002CC }
|
||||
A:HOVER { color : #BF0000 }
|
||||
BODY { background-color : #FEFEFE; color : #000000; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; text-align : justify }
|
||||
H1{ font-size : 160%; font-style : normal; font-weight : bold; text-align : left; border : 1px solid Black; background-color : #E7E7E7; margin-left : 0px; page-break-before : always; }
|
||||
H2{ font-size : 130%; font-style : normal; font-weight : bold; text-align : left; background-color : #EEEEEE; border : 1px solid Gray; page-break-before : always; }
|
||||
H3{ font-size : 110%; font-style : normal; font-weight : bold; text-align : left; background-color : #F1F1F1; border : 1px solid Silver;}
|
||||
H4{ font-size : 100%; font-style : normal; font-weight : bold; text-align : left; border : 1px solid Gray; background-color : #F4F4F4;}
|
||||
H5{ font-size : 100%; font-style : italic; font-weight : bold; text-align : left; border : 1px solid Gray; background-color : #F4F4F4;}
|
||||
H6{ font-size : 100%; font-style : italic; font-weight : normal; text-align : left; border : 1px solid Gray; background-color : #F4F4F4;}
|
||||
SMALL{ font-size : 80% }
|
||||
BLOCKQUOTE{ margin-left :4em; margin-top:1em; margin-right:0.2em;}
|
||||
HR{ color : Black }
|
||||
UL{margin-left: 0}
|
||||
.epigraph{width:50%; margin-left : 35%;}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<xsl:for-each select="fb:description/fb:title-info/fb:annotation">
|
||||
<div>
|
||||
<xsl:call-template name="annotation"/>
|
||||
</div>
|
||||
<hr/>
|
||||
</xsl:for-each>
|
||||
<!-- BUILD TOC -->
|
||||
<ul>
|
||||
<xsl:apply-templates select="fb:body" mode="toc"/>
|
||||
</ul>
|
||||
<hr/>
|
||||
<!-- BUILD BOOK -->
|
||||
<xsl:for-each select="fb:body">
|
||||
<xsl:if test="position()!=1">
|
||||
<hr/>
|
||||
</xsl:if>
|
||||
<xsl:if test="@name">
|
||||
<h4 align="center">
|
||||
<xsl:value-of select="@name"/>
|
||||
</h4>
|
||||
</xsl:if>
|
||||
<!-- <xsl:apply-templates /> -->
|
||||
<xsl:apply-templates/>
|
||||
</xsl:for-each>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
<!-- author template -->
|
||||
<xsl:template name="author">
|
||||
<xsl:value-of select="fb:first-name"/>
|
||||
<xsl:text disable-output-escaping="no"> </xsl:text>
|
||||
<xsl:value-of select="fb:middle-name"/> 
|
||||
<xsl:text disable-output-escaping="no"> </xsl:text>
|
||||
<xsl:value-of select="fb:last-name"/>
|
||||
<br/>
|
||||
</xsl:template>
|
||||
<!-- secuence template -->
|
||||
<xsl:template name="sequence">
|
||||
<LI/>
|
||||
<xsl:value-of select="@name"/>
|
||||
<xsl:if test="@number">
|
||||
<xsl:text disable-output-escaping="no">, #</xsl:text>
|
||||
<xsl:value-of select="@number"/>
|
||||
</xsl:if>
|
||||
<xsl:if test="fb:sequence">
|
||||
<ul>
|
||||
<xsl:for-each select="fb:sequence">
|
||||
<xsl:call-template name="sequence"/>
|
||||
</xsl:for-each>
|
||||
</ul>
|
||||
</xsl:if>
|
||||
<!-- <br/> -->
|
||||
</xsl:template>
|
||||
<!-- toc template -->
|
||||
<xsl:template match="fb:section|fb:body" mode="toc">
|
||||
<xsl:choose>
|
||||
<xsl:when test="name()='body' and position()=1 and not(fb:title)">
|
||||
<xsl:apply-templates select="fb:section" mode="toc"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<li>
|
||||
<a href="#TOC_{generate-id()}"><xsl:value-of select="normalize-space(fb:title/fb:p[1] | @name)"/></a>
|
||||
<xsl:if test="fb:section">
|
||||
<ul><xsl:apply-templates select="fb:section" mode="toc"/></ul>
|
||||
</xsl:if>
|
||||
</li>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
<!-- description -->
|
||||
<xsl:template match="fb:description">
|
||||
<xsl:apply-templates/>
|
||||
</xsl:template>
|
||||
<!-- body -->
|
||||
<xsl:template match="fb:body">
|
||||
<div><xsl:apply-templates/></div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="fb:section">
|
||||
<a name="TOC_{generate-id()}"></a>
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<!-- section/title -->
|
||||
<xsl:template match="fb:section/fb:title|fb:poem/fb:title">
|
||||
<xsl:choose>
|
||||
<xsl:when test="count(ancestor::node()) < 9">
|
||||
<xsl:element name="{concat('h',count(ancestor::node())-3)}">
|
||||
<a name="TOC_{generate-id()}"></a>
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:element>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:element name="h6">
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:element>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
<!-- section/title -->
|
||||
<xsl:template match="fb:body/fb:title">
|
||||
<h1><xsl:apply-templates mode="title"/></h1>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="fb:title/fb:p">
|
||||
<xsl:apply-templates/><xsl:text disable-output-escaping="no"> </xsl:text><br/>
|
||||
</xsl:template>
|
||||
<!-- subtitle -->
|
||||
<xsl:template match="fb:subtitle">
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<h5>
|
||||
<xsl:apply-templates/>
|
||||
</h5>
|
||||
</xsl:template>
|
||||
<!-- p -->
|
||||
<xsl:template match="fb:p">
|
||||
<div align="justify"><xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>    <xsl:apply-templates/></div>
|
||||
</xsl:template>
|
||||
<!-- strong -->
|
||||
<xsl:template match="fb:strong">
|
||||
<b><xsl:apply-templates/></b>
|
||||
</xsl:template>
|
||||
<!-- emphasis -->
|
||||
<xsl:template match="fb:emphasis">
|
||||
<i> <xsl:apply-templates/></i>
|
||||
</xsl:template>
|
||||
<!-- style -->
|
||||
<xsl:template match="fb:style">
|
||||
<span class="{@name}"><xsl:apply-templates/></span>
|
||||
</xsl:template>
|
||||
<!-- empty-line -->
|
||||
<xsl:template match="fb:empty-line">
|
||||
<br/>
|
||||
</xsl:template>
|
||||
<!-- link -->
|
||||
<xsl:template match="fb:a">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="href"><xsl:value-of select="@xlink:href"/></xsl:attribute>
|
||||
<xsl:attribute name="title">
|
||||
<xsl:choose>
|
||||
<xsl:when test="starts-with(@xlink:href,'#')"><xsl:value-of select="key('note-link',substring-after(@xlink:href,'#'))/fb:p"/></xsl:when>
|
||||
<xsl:otherwise><xsl:value-of select="key('note-link',@xlink:href)/fb:p"/></xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
<xsl:choose>
|
||||
<xsl:when test="(@type) = 'note'">
|
||||
<sup>
|
||||
<xsl:apply-templates/>
|
||||
</sup>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:element>
|
||||
</xsl:template>
|
||||
<!-- annotation -->
|
||||
<xsl:template name="annotation">
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<h3>Annotation</h3>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:template>
|
||||
<!-- epigraph -->
|
||||
<xsl:template match="fb:epigraph">
|
||||
<blockquote class="epigraph">
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</blockquote>
|
||||
</xsl:template>
|
||||
<!-- epigraph/text-author -->
|
||||
<xsl:template match="fb:epigraph/fb:text-author">
|
||||
<blockquote>
|
||||
<i><xsl:apply-templates/></i>
|
||||
</blockquote>
|
||||
</xsl:template>
|
||||
<!-- cite -->
|
||||
<xsl:template match="fb:cite">
|
||||
<blockquote>
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</blockquote>
|
||||
</xsl:template>
|
||||
<!-- cite/text-author -->
|
||||
<xsl:template match="fb:text-author">
|
||||
<blockquote>
|
||||
<i> <xsl:apply-templates/></i></blockquote>
|
||||
</xsl:template>
|
||||
<!-- date -->
|
||||
<xsl:template match="fb:date">
|
||||
<xsl:choose>
|
||||
<xsl:when test="not(@value)">
|
||||
   <xsl:apply-templates/>
|
||||
<br/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
   <xsl:value-of select="@value"/>
|
||||
<br/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
<!-- poem -->
|
||||
<xsl:template match="fb:poem">
|
||||
<blockquote>
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</blockquote>
|
||||
</xsl:template>
|
||||
|
||||
<!-- stanza -->
|
||||
<xsl:template match="fb:stanza">
|
||||
<xsl:apply-templates/>
|
||||
<br/>
|
||||
</xsl:template>
|
||||
<!-- v -->
|
||||
<xsl:template match="fb:v">
|
||||
<xsl:if test="@id">
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="name"><xsl:value-of select="@id"/></xsl:attribute>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/><br/>
|
||||
</xsl:template>
|
||||
<!-- image -->
|
||||
<xsl:template match="fb:image">
|
||||
<div align="center">
|
||||
<img border="1">
|
||||
<xsl:choose>
|
||||
<xsl:when test="starts-with(@xlink:href,'#')">
|
||||
<xsl:attribute name="src"><xsl:value-of select="substring-after(@xlink:href,'#')"/></xsl:attribute>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:attribute name="src"><xsl:value-of select="@xlink:href"/></xsl:attribute>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</img>
|
||||
</div>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
@ -36,6 +36,7 @@ entry_points = {
|
||||
'web2lrf = calibre.ebooks.lrf.web.convert_from:main',
|
||||
'pdf2lrf = calibre.ebooks.lrf.pdf.convert_from:main',
|
||||
'mobi2lrf = calibre.ebooks.lrf.mobi.convert_from:main',
|
||||
'fb22lrf = calibre.ebooks.lrf.fb2.convert_from:main',
|
||||
'any2lrf = calibre.ebooks.lrf.any.convert_from:main',
|
||||
'lrf2lrs = calibre.ebooks.lrf.parser:main',
|
||||
'lrs2lrf = calibre.ebooks.lrf.lrs.convert_from:main',
|
||||
@ -172,9 +173,11 @@ def setup_completion(fatal_errors):
|
||||
f.write(opts_and_exts('epub2lrf', htmlop, ['epub']))
|
||||
f.write(opts_and_exts('rtf2lrf', htmlop, ['rtf']))
|
||||
f.write(opts_and_exts('mobi2lrf', htmlop, ['mobi', 'prc']))
|
||||
f.write(opts_and_exts('fb22lrf', htmlop, ['fb2']))
|
||||
f.write(opts_and_exts('pdf2lrf', htmlop, ['pdf']))
|
||||
f.write(opts_and_exts('any2lrf', htmlop,
|
||||
['epub', 'htm', 'html', 'xhtml', 'xhtm', 'rar', 'zip', 'txt', 'lit', 'rtf', 'pdf', 'prc', 'mobi']))
|
||||
['epub', 'htm', 'html', 'xhtml', 'xhtm', 'rar', 'zip',
|
||||
'txt', 'lit', 'rtf', 'pdf', 'prc', 'mobi', 'fb2']))
|
||||
f.write(opts_and_exts('lrf2lrs', lrf2lrsop, ['lrf']))
|
||||
f.write(opts_and_exts('lrf-meta', metaop, ['lrf']))
|
||||
f.write(opts_and_exts('rtf-meta', metaop, ['rtf']))
|
||||
|
@ -10,7 +10,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ca\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2008-04-04 09:07+PDT\n"
|
||||
"POT-Creation-Date: 2008-04-07 16:11+IST\n"
|
||||
"PO-Revision-Date: 2007-11-16 09:07+0100\n"
|
||||
"Last-Translator: calibre\n"
|
||||
"Language-Team: \n"
|
||||
@ -330,7 +330,7 @@ msgid ""
|
||||
"default is to try and guess the encoding."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:140
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:143
|
||||
msgid ""
|
||||
"any2lrf [options] myfile\n"
|
||||
"\n"
|
||||
@ -341,7 +341,7 @@ msgid ""
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:155
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:158
|
||||
msgid "No file to convert specified."
|
||||
msgstr ""
|
||||
|
||||
@ -353,6 +353,19 @@ msgid ""
|
||||
"%prog converts mybook.epub to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:18
|
||||
msgid ""
|
||||
"%prog [options] mybook.fb2\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"%prog converts mybook.fb2 to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:23
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
|
||||
msgid "Options to control the behavior of feeds2disk"
|
||||
msgstr ""
|
||||
@ -377,78 +390,78 @@ msgstr ""
|
||||
msgid "\tBaen file detected. Re-parsing..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:339
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:341
|
||||
msgid "Written preprocessed HTML to "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:350
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:352
|
||||
msgid "Processing %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:364
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:366
|
||||
msgid "\tConverting to BBeB..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:502
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:509
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:504
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:511
|
||||
msgid "Could not parse file: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:521
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:523
|
||||
msgid "Failed to parse link %s %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:566
|
||||
msgid "Cannot add link %s to TOC"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:906
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:908
|
||||
msgid "Unable to process image %s. Error: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:944
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:946
|
||||
msgid "Unable to process interlaced PNG %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:959
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:961
|
||||
msgid ""
|
||||
"Could not process image: %s\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1649
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
msgid "An error occurred while processing a table: %s. Ignoring table markup."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1653
|
||||
msgid ""
|
||||
"Bad table:\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1673
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1675
|
||||
msgid "Table has cell that is too large"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1701
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1703
|
||||
msgid ""
|
||||
"You have to save the website %s as an html file first and then run html2lrf "
|
||||
"on it."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1741
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1743
|
||||
msgid "Could not read cover image: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1744
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1746
|
||||
msgid "Cannot read from: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1873
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1875
|
||||
msgid "Failed to process opf file"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1879
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1881
|
||||
msgid ""
|
||||
"Usage: %prog [options] mybook.html\n"
|
||||
"\n"
|
||||
@ -605,10 +618,6 @@ msgid ""
|
||||
"%prog converts mybook.txt to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:20
|
||||
msgid "Set the authors"
|
||||
msgstr ""
|
||||
@ -2131,9 +2140,8 @@ msgid ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
"\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271
|
||||
@ -2511,8 +2519,8 @@ msgstr ""
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
#~ "\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span style=\" "
|
||||
#~ "text-decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %"
|
||||
#~ "1 by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 "
|
||||
#~ "by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "body></html>"
|
||||
#~ msgstr ""
|
||||
#~ "<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/"
|
||||
@ -2522,11 +2530,11 @@ msgstr ""
|
||||
#~ "font-weight:400; font-style:normal;\">\n"
|
||||
#~ "<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-"
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">Per a més ajuda, vegeu "
|
||||
#~ "(en anglès) <a href=\"https://calibre.kovidgoyal.net/wiki/"
|
||||
#~ "WikiStart#Usage\"><span style=\" text-decoration: underline; color:"
|
||||
#~ "#0000ff;\">calibre.kovidgoyal.net</span></a><br /><br /><span style=\" "
|
||||
#~ "font-weight:600;\">calibre</span>: %1 de <span style=\" font-weight:600;"
|
||||
#~ "\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
#~ "(en anglès) <a href=\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage"
|
||||
#~ "\"><span style=\" text-decoration: underline; color:#0000ff;\">calibre."
|
||||
#~ "kovidgoyal.net</span></a><br /><br /><span style=\" font-weight:600;"
|
||||
#~ "\">calibre</span>: %1 de <span style=\" font-weight:600;\">Kovid Goyal</"
|
||||
#~ "span> %2<br />%3</p></body></html>"
|
||||
|
||||
#~ msgid "Not yet implemented."
|
||||
#~ msgstr "Sense implementar."
|
||||
|
File diff suppressed because one or more lines are too long
@ -5,7 +5,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: calibre 0.4.17\n"
|
||||
"POT-Creation-Date: 2008-04-04 09:07+PDT\n"
|
||||
"POT-Creation-Date: 2008-04-07 16:11+IST\n"
|
||||
"PO-Revision-Date: 2008-04-04 17:29+0100\n"
|
||||
"Last-Translator: S. Dorscht <stdoonline@googlemail.com>\n"
|
||||
"Language-Team: de\n"
|
||||
@ -341,7 +341,7 @@ msgstr ""
|
||||
"cp-1252. Eine andere gebräuchliche Alternative ist utf-8. In der "
|
||||
"Voreinstellung wird versucht, die Kodierung zu erraten. "
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:140
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:143
|
||||
msgid ""
|
||||
"any2lrf [options] myfile\n"
|
||||
"\n"
|
||||
@ -359,7 +359,7 @@ msgstr ""
|
||||
"oder\n"
|
||||
"ZIP Archive, indem es nach einem eBook im Archiv sucht.\n"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:155
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:158
|
||||
msgid "No file to convert specified."
|
||||
msgstr "Keine Datei zur Konvertierung angegeben."
|
||||
|
||||
@ -375,6 +375,19 @@ msgstr ""
|
||||
" \n"
|
||||
"%prog konvertiert dateiname.epub in dateiname.lrf"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:18
|
||||
msgid ""
|
||||
"%prog [options] mybook.fb2\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"%prog converts mybook.fb2 to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:23
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr "Gebe erstellte HTML auf stdout aus und beende das Programm."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
|
||||
msgid "Options to control the behavior of feeds2disk"
|
||||
msgstr "Einstellungen für feeds2disk"
|
||||
@ -399,40 +412,40 @@ msgstr "\tAnalysiere HTML..."
|
||||
msgid "\tBaen file detected. Re-parsing..."
|
||||
msgstr "\tBaen Datei erkannt. Analysiere erneut..."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:339
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:341
|
||||
msgid "Written preprocessed HTML to "
|
||||
msgstr "Vorverarbeitetes HTML gespeichert unter"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:350
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:352
|
||||
msgid "Processing %s"
|
||||
msgstr "Verarbeite %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:364
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:366
|
||||
msgid "\tConverting to BBeB..."
|
||||
msgstr "\tKonvertiere in BBeB..."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:502
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:509
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:504
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:511
|
||||
msgid "Could not parse file: %s"
|
||||
msgstr "Konnte Datei nicht analysieren: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:521
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:523
|
||||
msgid "Failed to parse link %s %s"
|
||||
msgstr "Fehlschlag bei der Analysierung von %s %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:566
|
||||
msgid "Cannot add link %s to TOC"
|
||||
msgstr "Konnte Link %s nicht zu TOC hinzufügen"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:906
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:908
|
||||
msgid "Unable to process image %s. Error: %s"
|
||||
msgstr "Konnte Bild %s nicht verarbeiten. Fehler: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:944
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:946
|
||||
msgid "Unable to process interlaced PNG %s"
|
||||
msgstr "Konnte verschachteltes PNG %s nicht verarbeiten"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:959
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:961
|
||||
msgid ""
|
||||
"Could not process image: %s\n"
|
||||
"%s"
|
||||
@ -440,13 +453,13 @@ msgstr ""
|
||||
"Konnte Bild nicht verarbeiten: %s\n"
|
||||
"%s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1649
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
msgid "An error occurred while processing a table: %s. Ignoring table markup."
|
||||
msgstr ""
|
||||
"Ein Fehler trat während der Bearbeitung einer Tabelle auf: %s. "
|
||||
"Tabellenformat wird ignoriert."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1653
|
||||
msgid ""
|
||||
"Bad table:\n"
|
||||
"%s"
|
||||
@ -454,11 +467,11 @@ msgstr ""
|
||||
"Schlechte Tabelle:\n"
|
||||
"%s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1673
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1675
|
||||
msgid "Table has cell that is too large"
|
||||
msgstr "Tabelle enthält Zelle, die zu groß ist"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1701
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1703
|
||||
msgid ""
|
||||
"You have to save the website %s as an html file first and then run html2lrf "
|
||||
"on it."
|
||||
@ -466,19 +479,19 @@ msgstr ""
|
||||
"Sichern Sie die Website %s zuerst als HTML Datei und benutzen Sie dann "
|
||||
"html2lrf mit der gespeicherten HTML Datei."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1741
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1743
|
||||
msgid "Could not read cover image: %s"
|
||||
msgstr "Konnte Umschlagbild nicht lesen: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1744
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1746
|
||||
msgid "Cannot read from: %s"
|
||||
msgstr "Lesen nicht möglich von: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1873
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1875
|
||||
msgid "Failed to process opf file"
|
||||
msgstr "Verarbeitung der OPF Datei schlug fehl"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1879
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1881
|
||||
msgid ""
|
||||
"Usage: %prog [options] mybook.html\n"
|
||||
"\n"
|
||||
@ -677,10 +690,6 @@ msgstr ""
|
||||
"\n"
|
||||
"%prog konvertiert dateiname.txt in dateiname.lrf"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr "Gebe erstellte HTML auf stdout aus und beende das Programm."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:20
|
||||
msgid "Set the authors"
|
||||
msgstr "Gebe Autoren ein"
|
||||
@ -1815,8 +1824,8 @@ msgid ""
|
||||
"calibre.kovidgoyal.net/user_manual/news.html\">User Recipes</a>"
|
||||
msgstr ""
|
||||
"Wenn Sie Hilfe zur Erstellung Erweiterter Nachrichten Rezepte benötigen, "
|
||||
"besuchen Sie die englischsprachige Seite <a href=\"http://calibre."
|
||||
"kovidgoyal.net/user_manual/news.html\">User Recipes</a>"
|
||||
"besuchen Sie die englischsprachige Seite <a href=\"http://calibre.kovidgoyal."
|
||||
"net/user_manual/news.html\">User Recipes</a>"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:242
|
||||
msgid "Recipe source code (python)"
|
||||
@ -2293,9 +2302,8 @@ msgid ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
"\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
msgstr ""
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css"
|
||||
"\">\n"
|
||||
@ -2306,9 +2314,8 @@ msgstr ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">Hilfe gibt es online bei "
|
||||
"<a href=\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271
|
||||
msgid "Advanced search"
|
||||
@ -2885,8 +2892,8 @@ msgstr "Zeige detailierte Ausgabeinformation. Hilfreich zur Fehlersuche."
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
#~ "\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span style=\" "
|
||||
#~ "text-decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %"
|
||||
#~ "1 by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 "
|
||||
#~ "by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "body></html>"
|
||||
#~ msgstr ""
|
||||
#~ "<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/"
|
||||
@ -2896,11 +2903,11 @@ msgstr "Zeige detailierte Ausgabeinformation. Hilfreich zur Fehlersuche."
|
||||
#~ "font-weight:400; font-style:normal;\">\n"
|
||||
#~ "<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-"
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">Hilfe gibt es bei <a "
|
||||
#~ "href=\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span "
|
||||
#~ "style=\" text-decoration: underline; color:#0000ff;\">calibre."
|
||||
#~ "kovidgoyal.net</span></a><br /><br /><span style=\" font-weight:600;"
|
||||
#~ "\">calibre</span>: %1 by <span style=\" font-weight:600;\">Kovid Goyal</"
|
||||
#~ "span> %2<br />%3</p></body></html>"
|
||||
#~ "href=\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span style="
|
||||
#~ "\" text-decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 "
|
||||
#~ "by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "body></html>"
|
||||
|
||||
#~ msgid "Not yet implemented."
|
||||
#~ msgstr "Noch nicht eingeführt."
|
||||
|
@ -10,7 +10,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: es\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2008-04-04 09:07+PDT\n"
|
||||
"POT-Creation-Date: 2008-04-07 16:11+IST\n"
|
||||
"PO-Revision-Date: 2007-11-16 09:21+0100\n"
|
||||
"Last-Translator: calibre\n"
|
||||
"Language-Team: Spanish\n"
|
||||
@ -330,7 +330,7 @@ msgid ""
|
||||
"default is to try and guess the encoding."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:140
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:143
|
||||
msgid ""
|
||||
"any2lrf [options] myfile\n"
|
||||
"\n"
|
||||
@ -341,7 +341,7 @@ msgid ""
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:155
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:158
|
||||
msgid "No file to convert specified."
|
||||
msgstr ""
|
||||
|
||||
@ -353,6 +353,19 @@ msgid ""
|
||||
"%prog converts mybook.epub to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:18
|
||||
msgid ""
|
||||
"%prog [options] mybook.fb2\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"%prog converts mybook.fb2 to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:23
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
|
||||
msgid "Options to control the behavior of feeds2disk"
|
||||
msgstr ""
|
||||
@ -377,78 +390,78 @@ msgstr ""
|
||||
msgid "\tBaen file detected. Re-parsing..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:339
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:341
|
||||
msgid "Written preprocessed HTML to "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:350
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:352
|
||||
msgid "Processing %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:364
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:366
|
||||
msgid "\tConverting to BBeB..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:502
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:509
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:504
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:511
|
||||
msgid "Could not parse file: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:521
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:523
|
||||
msgid "Failed to parse link %s %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:566
|
||||
msgid "Cannot add link %s to TOC"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:906
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:908
|
||||
msgid "Unable to process image %s. Error: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:944
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:946
|
||||
msgid "Unable to process interlaced PNG %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:959
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:961
|
||||
msgid ""
|
||||
"Could not process image: %s\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1649
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
msgid "An error occurred while processing a table: %s. Ignoring table markup."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1653
|
||||
msgid ""
|
||||
"Bad table:\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1673
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1675
|
||||
msgid "Table has cell that is too large"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1701
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1703
|
||||
msgid ""
|
||||
"You have to save the website %s as an html file first and then run html2lrf "
|
||||
"on it."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1741
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1743
|
||||
msgid "Could not read cover image: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1744
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1746
|
||||
msgid "Cannot read from: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1873
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1875
|
||||
msgid "Failed to process opf file"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1879
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1881
|
||||
msgid ""
|
||||
"Usage: %prog [options] mybook.html\n"
|
||||
"\n"
|
||||
@ -606,10 +619,6 @@ msgid ""
|
||||
"%prog converts mybook.txt to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:20
|
||||
msgid "Set the authors"
|
||||
msgstr ""
|
||||
@ -2134,9 +2143,8 @@ msgid ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
"\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271
|
||||
@ -2514,8 +2522,8 @@ msgstr ""
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
#~ "\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span style=\" "
|
||||
#~ "text-decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %"
|
||||
#~ "1 by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 "
|
||||
#~ "by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "body></html>"
|
||||
#~ msgstr ""
|
||||
#~ "<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/"
|
||||
|
@ -5,7 +5,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: calibre 0.4.22\n"
|
||||
"POT-Creation-Date: 2008-04-04 09:07+PDT\n"
|
||||
"POT-Creation-Date: 2008-04-07 16:11+IST\n"
|
||||
"PO-Revision-Date: 2008-01-20 09:59+0100\n"
|
||||
"Last-Translator: FixB <fix.bornes@free.fr>\n"
|
||||
"Language-Team: fr\n"
|
||||
@ -329,7 +329,7 @@ msgid ""
|
||||
"default is to try and guess the encoding."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:140
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:143
|
||||
msgid ""
|
||||
"any2lrf [options] myfile\n"
|
||||
"\n"
|
||||
@ -340,7 +340,7 @@ msgid ""
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:155
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:158
|
||||
msgid "No file to convert specified."
|
||||
msgstr ""
|
||||
|
||||
@ -352,6 +352,19 @@ msgid ""
|
||||
"%prog converts mybook.epub to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:18
|
||||
msgid ""
|
||||
"%prog [options] mybook.fb2\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"%prog converts mybook.fb2 to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:23
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
|
||||
msgid "Options to control the behavior of feeds2disk"
|
||||
msgstr ""
|
||||
@ -376,78 +389,78 @@ msgstr ""
|
||||
msgid "\tBaen file detected. Re-parsing..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:339
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:341
|
||||
msgid "Written preprocessed HTML to "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:350
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:352
|
||||
msgid "Processing %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:364
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:366
|
||||
msgid "\tConverting to BBeB..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:502
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:509
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:504
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:511
|
||||
msgid "Could not parse file: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:521
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:523
|
||||
msgid "Failed to parse link %s %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:566
|
||||
msgid "Cannot add link %s to TOC"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:906
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:908
|
||||
msgid "Unable to process image %s. Error: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:944
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:946
|
||||
msgid "Unable to process interlaced PNG %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:959
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:961
|
||||
msgid ""
|
||||
"Could not process image: %s\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1649
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
msgid "An error occurred while processing a table: %s. Ignoring table markup."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1653
|
||||
msgid ""
|
||||
"Bad table:\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1673
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1675
|
||||
msgid "Table has cell that is too large"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1701
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1703
|
||||
msgid ""
|
||||
"You have to save the website %s as an html file first and then run html2lrf "
|
||||
"on it."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1741
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1743
|
||||
msgid "Could not read cover image: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1744
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1746
|
||||
msgid "Cannot read from: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1873
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1875
|
||||
msgid "Failed to process opf file"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1879
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1881
|
||||
msgid ""
|
||||
"Usage: %prog [options] mybook.html\n"
|
||||
"\n"
|
||||
@ -606,10 +619,6 @@ msgid ""
|
||||
"%prog converts mybook.txt to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:20
|
||||
msgid "Set the authors"
|
||||
msgstr ""
|
||||
@ -2157,9 +2166,8 @@ msgid ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
"\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271
|
||||
@ -2544,8 +2552,8 @@ msgstr ""
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
#~ "\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span style=\" "
|
||||
#~ "text-decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %"
|
||||
#~ "1 by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 "
|
||||
#~ "by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "body></html>"
|
||||
#~ msgstr ""
|
||||
#~ "<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/"
|
||||
@ -2557,8 +2565,8 @@ msgstr ""
|
||||
#~ "right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
#~ "\"https://calibre.kovidgoyal.net/wiki/WikiStart#Usage\"><span style=\" "
|
||||
#~ "text-decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %"
|
||||
#~ "1 by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "span></a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 "
|
||||
#~ "by <span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></"
|
||||
#~ "body></html>"
|
||||
|
||||
#~ msgid "Not yet implemented."
|
||||
|
@ -7,7 +7,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: it\n"
|
||||
"POT-Creation-Date: 2008-04-04 09:07+PDT\n"
|
||||
"POT-Creation-Date: 2008-04-07 16:11+IST\n"
|
||||
"PO-Revision-Date: 16:44, 4/4/2008\n"
|
||||
"Last-Translator: Iacopo Benesperi <iacchi@iacchi.org>\n"
|
||||
"Language-Team: italiano\n"
|
||||
@ -344,7 +344,7 @@ msgstr ""
|
||||
"comune per i computer Windows è cp-1252. Un'altra scelta comune è utf-8. "
|
||||
"L'opzione predefinita è quella di provare ad indovinare la codifica"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:140
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:143
|
||||
msgid ""
|
||||
"any2lrf [options] myfile\n"
|
||||
"\n"
|
||||
@ -361,7 +361,7 @@ msgstr ""
|
||||
"archivio RAR o ZIP, cercando i libri dentro l'archivio.\n"
|
||||
" "
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:155
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:158
|
||||
msgid "No file to convert specified."
|
||||
msgstr "Nessun file da convertire specificato"
|
||||
|
||||
@ -377,6 +377,19 @@ msgstr ""
|
||||
" \n"
|
||||
"%prog converte miolibro.epub in miolibro.lrf"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:18
|
||||
msgid ""
|
||||
"%prog [options] mybook.fb2\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"%prog converts mybook.fb2 to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:23
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr "Invia l'HTML generato allo stdout ed esce"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
|
||||
msgid "Options to control the behavior of feeds2disk"
|
||||
msgstr "Opzioni per controllare il comportamento di feeds2disk"
|
||||
@ -401,40 +414,40 @@ msgstr "\tAnalisi HTML..."
|
||||
msgid "\tBaen file detected. Re-parsing..."
|
||||
msgstr "\tFile di Baen individuato. Rianalizzo..."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:339
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:341
|
||||
msgid "Written preprocessed HTML to "
|
||||
msgstr "HTML preprocessato scritto in "
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:350
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:352
|
||||
msgid "Processing %s"
|
||||
msgstr "Sto processando %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:364
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:366
|
||||
msgid "\tConverting to BBeB..."
|
||||
msgstr "\tConversione in BBeB..."
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:502
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:509
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:504
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:511
|
||||
msgid "Could not parse file: %s"
|
||||
msgstr "Impossibile analizzare il file: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:521
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:523
|
||||
msgid "Failed to parse link %s %s"
|
||||
msgstr "Analisi fallita del link %s %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:566
|
||||
msgid "Cannot add link %s to TOC"
|
||||
msgstr "Impossibile aggiungere il link %s alla TOC"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:906
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:908
|
||||
msgid "Unable to process image %s. Error: %s"
|
||||
msgstr "Impossibile processare l'immagine %s. Errore: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:944
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:946
|
||||
msgid "Unable to process interlaced PNG %s"
|
||||
msgstr "Impossibile processare la PNG interlacciata %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:959
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:961
|
||||
msgid ""
|
||||
"Could not process image: %s\n"
|
||||
"%s"
|
||||
@ -442,13 +455,13 @@ msgstr ""
|
||||
"Impossibile processare l'immagine: %s\n"
|
||||
"%s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1649
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
msgid "An error occurred while processing a table: %s. Ignoring table markup."
|
||||
msgstr ""
|
||||
"Si è verificato un errore nel processamento della tabella: %s. Ignoro il "
|
||||
"codice della tabella"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1653
|
||||
msgid ""
|
||||
"Bad table:\n"
|
||||
"%s"
|
||||
@ -456,11 +469,11 @@ msgstr ""
|
||||
"Tabella malformata:\n"
|
||||
"%s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1673
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1675
|
||||
msgid "Table has cell that is too large"
|
||||
msgstr "La tabella ha celle troppo larghe"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1701
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1703
|
||||
msgid ""
|
||||
"You have to save the website %s as an html file first and then run html2lrf "
|
||||
"on it."
|
||||
@ -468,19 +481,19 @@ msgstr ""
|
||||
"È necessario prima salvare il sito web %s come un file HTML e poi eseguire "
|
||||
"html2lrf su di esso"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1741
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1743
|
||||
msgid "Could not read cover image: %s"
|
||||
msgstr "Impossibile leggere l'immagine di copertina: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1744
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1746
|
||||
msgid "Cannot read from: %s"
|
||||
msgstr "Impossibile leggere da: %s"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1873
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1875
|
||||
msgid "Failed to process opf file"
|
||||
msgstr "Processamento del file OPF fallito"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1879
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1881
|
||||
msgid ""
|
||||
"Usage: %prog [options] mybook.html\n"
|
||||
"\n"
|
||||
@ -677,10 +690,6 @@ msgstr ""
|
||||
"\n"
|
||||
"%prog converte miolibro.txt in miolibro.lrf"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr "Invia l'HTML generato allo stdout ed esce"
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:20
|
||||
msgid "Set the authors"
|
||||
msgstr "Imposta gli autori"
|
||||
@ -2280,9 +2289,8 @@ msgid ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
"\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
msgstr ""
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css"
|
||||
"\">\n"
|
||||
|
@ -5,7 +5,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: calibre 0.4.17\n"
|
||||
"POT-Creation-Date: 2008-04-04 09:07+PDT\n"
|
||||
"POT-Creation-Date: 2008-04-07 16:11+IST\n"
|
||||
"PO-Revision-Date: 2007-11-08 14:39+PST\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: sl\n"
|
||||
@ -268,7 +268,7 @@ msgid ""
|
||||
"default is to try and guess the encoding."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:140
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:143
|
||||
msgid ""
|
||||
"any2lrf [options] myfile\n"
|
||||
"\n"
|
||||
@ -279,7 +279,7 @@ msgid ""
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:155
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/any/convert_from.py:158
|
||||
msgid "No file to convert specified."
|
||||
msgstr ""
|
||||
|
||||
@ -291,6 +291,19 @@ msgid ""
|
||||
"%prog converts mybook.epub to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:18
|
||||
msgid ""
|
||||
"%prog [options] mybook.fb2\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"%prog converts mybook.fb2 to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/fb2/convert_from.py:23
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/feeds/convert_from.py:20
|
||||
msgid "Options to control the behavior of feeds2disk"
|
||||
msgstr ""
|
||||
@ -315,78 +328,78 @@ msgstr ""
|
||||
msgid "\tBaen file detected. Re-parsing..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:339
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:341
|
||||
msgid "Written preprocessed HTML to "
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:350
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:352
|
||||
msgid "Processing %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:364
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:366
|
||||
msgid "\tConverting to BBeB..."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:502
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:509
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:504
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:511
|
||||
msgid "Could not parse file: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:521
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:523
|
||||
msgid "Failed to parse link %s %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:564
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:566
|
||||
msgid "Cannot add link %s to TOC"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:906
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:908
|
||||
msgid "Unable to process image %s. Error: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:944
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:946
|
||||
msgid "Unable to process interlaced PNG %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:959
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:961
|
||||
msgid ""
|
||||
"Could not process image: %s\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1649
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
msgid "An error occurred while processing a table: %s. Ignoring table markup."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1651
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1653
|
||||
msgid ""
|
||||
"Bad table:\n"
|
||||
"%s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1673
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1675
|
||||
msgid "Table has cell that is too large"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1701
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1703
|
||||
msgid ""
|
||||
"You have to save the website %s as an html file first and then run html2lrf "
|
||||
"on it."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1741
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1743
|
||||
msgid "Could not read cover image: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1744
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1746
|
||||
msgid "Cannot read from: %s"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1873
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1875
|
||||
msgid "Failed to process opf file"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1879
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1881
|
||||
msgid ""
|
||||
"Usage: %prog [options] mybook.html\n"
|
||||
"\n"
|
||||
@ -543,10 +556,6 @@ msgid ""
|
||||
"%prog converts mybook.txt to mybook.lrf"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/lrf/txt/convert_from.py:22
|
||||
msgid "Print generated HTML to stdout and quit."
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:20
|
||||
msgid "Set the authors"
|
||||
msgstr ""
|
||||
@ -2051,9 +2060,8 @@ msgid ""
|
||||
"right:0px; -qt-block-indent:0; text-indent:0px;\">For help visit <a href="
|
||||
"\"http://calibre.kovidgoyal.net/user_manual\"><span style=\" text-"
|
||||
"decoration: underline; color:#0000ff;\">calibre.kovidgoyal.net</span></"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by "
|
||||
"<span style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></"
|
||||
"html>"
|
||||
"a><br /><br /><span style=\" font-weight:600;\">calibre</span>: %1 by <span "
|
||||
"style=\" font-weight:600;\">Kovid Goyal</span> %2<br />%3</p></body></html>"
|
||||
msgstr ""
|
||||
|
||||
#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:271
|
||||
|
Loading…
x
Reference in New Issue
Block a user