From 63d578f99bd5f0f37bb26107d6d4a074a06c1da2 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 12 Apr 2012 18:38:43 +0530 Subject: [PATCH] Start work on KF8 writer --- .../ebooks/conversion/plugins/mobi_output.py | 11 +++++++++++ src/calibre/ebooks/mobi/writer8/__init__.py | 11 +++++++++++ src/calibre/ebooks/mobi/writer8/main.py | 15 +++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 src/calibre/ebooks/mobi/writer8/__init__.py create mode 100644 src/calibre/ebooks/mobi/writer8/main.py diff --git a/src/calibre/ebooks/conversion/plugins/mobi_output.py b/src/calibre/ebooks/conversion/plugins/mobi_output.py index 06580be1ba..72314b4237 100644 --- a/src/calibre/ebooks/conversion/plugins/mobi_output.py +++ b/src/calibre/ebooks/conversion/plugins/mobi_output.py @@ -153,11 +153,22 @@ class MOBIOutput(OutputFormatPlugin): def convert(self, oeb, output_path, input_plugin, opts, log): self.log, self.opts, self.oeb = log, opts, oeb + + kf8 = self.create_kf8() + self.write_mobi(input_plugin, output_path, kf8) + + def create_kf8(self): + from calibre.ebooks.mobi.writer8.main import KF8Writer + return KF8Writer(self.oeb, self.opts) + + def write_mobi(self, input_plugin, output_path, kf8): from calibre.ebooks.mobi.mobiml import MobiMLizer from calibre.ebooks.oeb.transforms.manglecase import CaseMangler from calibre.ebooks.oeb.transforms.rasterize import SVGRasterizer, Unavailable from calibre.ebooks.oeb.transforms.htmltoc import HTMLTOCAdder from calibre.customize.ui import plugin_for_input_format + + opts, oeb = self.opts, self.oeb if not opts.no_inline_toc: tocadder = HTMLTOCAdder(title=opts.toc_title, position='start' if opts.mobi_toc_at_start else 'end') diff --git a/src/calibre/ebooks/mobi/writer8/__init__.py b/src/calibre/ebooks/mobi/writer8/__init__.py new file mode 100644 index 0000000000..dd9615356c --- /dev/null +++ b/src/calibre/ebooks/mobi/writer8/__init__.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai +from __future__ import (unicode_literals, division, absolute_import, + print_function) + +__license__ = 'GPL v3' +__copyright__ = '2012, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + + + diff --git a/src/calibre/ebooks/mobi/writer8/main.py b/src/calibre/ebooks/mobi/writer8/main.py new file mode 100644 index 0000000000..fc4234eb10 --- /dev/null +++ b/src/calibre/ebooks/mobi/writer8/main.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai +from __future__ import (unicode_literals, division, absolute_import, + print_function) + +__license__ = 'GPL v3' +__copyright__ = '2012, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + + +class KF8Writer(object): + + def __init__(self, oeb, opts): + self.oeb, self.opts, self.log = oeb, opts, oeb.log +