Sync to trunk.

This commit is contained in:
John Schember 2009-06-26 18:42:07 -04:00
commit 1363c0b0d7
6 changed files with 19 additions and 10 deletions

View File

@ -2,7 +2,7 @@ __license__ = 'GPL v3'
__copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
__appname__ = 'calibre' __appname__ = 'calibre'
__version__ = '0.6.0b9' __version__ = '0.6.0b10'
__author__ = "Kovid Goyal <kovid@kovidgoyal.net>" __author__ = "Kovid Goyal <kovid@kovidgoyal.net>"
import re import re

View File

@ -187,11 +187,11 @@ class PRS505(CLI, Device):
path = location[0] path = location[0]
blist = 2 if location[3] == 'cardb' else 1 if location[3] == 'carda' else 0 blist = 2 if location[3] == 'cardb' else 1 if location[3] == 'carda' else 0
if path.startswith(self._main_prefix): if self._main_prefix and path.startswith(self._main_prefix):
name = path.replace(self._main_prefix, '') name = path.replace(self._main_prefix, '')
elif path.startswith(self._card_a_prefix): elif self._card_a_prefix and path.startswith(self._card_a_prefix):
name = path.replace(self._card_a_prefix, '') name = path.replace(self._card_a_prefix, '')
elif path.startswith(self._card_b_prefix): elif self._card_b_prefix and path.startswith(self._card_b_prefix):
name = path.replace(self._card_b_prefix, '') name = path.replace(self._card_b_prefix, '')
name = name.replace('\\', '/') name = name.replace('\\', '/')

View File

@ -47,6 +47,7 @@ class MOBIOutput(OutputFormatPlugin):
from calibre.ebooks.oeb.transforms.manglecase import CaseMangler from calibre.ebooks.oeb.transforms.manglecase import CaseMangler
from calibre.ebooks.oeb.transforms.rasterize import SVGRasterizer from calibre.ebooks.oeb.transforms.rasterize import SVGRasterizer
from calibre.ebooks.oeb.transforms.htmltoc import HTMLTOCAdder from calibre.ebooks.oeb.transforms.htmltoc import HTMLTOCAdder
from calibre.customize.ui import plugin_for_input_format
imagemax = PALM_MAX_IMAGE_SIZE if opts.rescale_images else None imagemax = PALM_MAX_IMAGE_SIZE if opts.rescale_images else None
tocadder = HTMLTOCAdder(title=opts.toc_title) tocadder = HTMLTOCAdder(title=opts.toc_title)
tocadder(oeb, opts) tocadder(oeb, opts)
@ -56,8 +57,11 @@ class MOBIOutput(OutputFormatPlugin):
rasterizer(oeb, opts) rasterizer(oeb, opts)
mobimlizer = MobiMLizer(ignore_tables=opts.linearize_tables) mobimlizer = MobiMLizer(ignore_tables=opts.linearize_tables)
mobimlizer(oeb, opts) mobimlizer(oeb, opts)
write_page_breaks_after_item = not input_plugin is plugin_for_input_format('cbz')
print 111111, write_page_breaks_after_item
writer = MobiWriter(opts, imagemax=imagemax, writer = MobiWriter(opts, imagemax=imagemax,
compression=UNCOMPRESSED if opts.dont_compress else PALMDOC, compression=UNCOMPRESSED if opts.dont_compress else PALMDOC,
prefer_author_sort=opts.prefer_author_sort) prefer_author_sort=opts.prefer_author_sort,
write_page_breaks_after_item=write_page_breaks_after_item)
writer(oeb, output_path) writer(oeb, output_path)

View File

@ -156,10 +156,11 @@ def rescale_image(data, maxsizeb, dimen=None):
class Serializer(object): class Serializer(object):
NSRMAP = {'': None, XML_NS: 'xml', XHTML_NS: '', MBP_NS: 'mbp'} NSRMAP = {'': None, XML_NS: 'xml', XHTML_NS: '', MBP_NS: 'mbp'}
def __init__(self, oeb, images): def __init__(self, oeb, images, write_page_breaks_after_item=True):
self.oeb = oeb self.oeb = oeb
self.images = images self.images = images
self.logger = oeb.logger self.logger = oeb.logger
self.write_page_breaks_after_item = write_page_breaks_after_item
self.id_offsets = {} self.id_offsets = {}
self.href_offsets = defaultdict(list) self.href_offsets = defaultdict(list)
self.breaks = [] self.breaks = []
@ -239,7 +240,8 @@ class Serializer(object):
self.id_offsets[item.href] = buffer.tell() self.id_offsets[item.href] = buffer.tell()
for elem in item.data.find(XHTML('body')): for elem in item.data.find(XHTML('body')):
self.serialize_elem(elem, item) self.serialize_elem(elem, item)
buffer.write('<mbp:pagebreak/>') if self.write_page_breaks_after_item:
buffer.write('<mbp:pagebreak/>')
def serialize_elem(self, elem, item, nsrmap=NSRMAP): def serialize_elem(self, elem, item, nsrmap=NSRMAP):
buffer = self.buffer buffer = self.buffer
@ -319,8 +321,9 @@ class MobiWriter(object):
COLLAPSE_RE = re.compile(r'[ \t\r\n\v]+') COLLAPSE_RE = re.compile(r'[ \t\r\n\v]+')
def __init__(self, opts, compression=PALMDOC, imagemax=None, def __init__(self, opts, compression=PALMDOC, imagemax=None,
prefer_author_sort=False): prefer_author_sort=False, write_page_breaks_after_item=True):
self.opts = opts self.opts = opts
self.write_page_breaks_after_item = write_page_breaks_after_item
self._compression = compression or UNCOMPRESSED self._compression = compression or UNCOMPRESSED
self._imagemax = imagemax or OTHER_MAX_IMAGE_SIZE self._imagemax = imagemax or OTHER_MAX_IMAGE_SIZE
self._prefer_author_sort = prefer_author_sort self._prefer_author_sort = prefer_author_sort
@ -583,7 +586,8 @@ class MobiWriter(object):
def _generate_text(self): def _generate_text(self):
self._oeb.logger.info('Serializing markup content...') self._oeb.logger.info('Serializing markup content...')
serializer = Serializer(self._oeb, self._images) serializer = Serializer(self._oeb, self._images,
write_page_breaks_after_item=self.write_page_breaks_after_item)
breaks = serializer.breaks breaks = serializer.breaks
text = serializer.text text = serializer.text
self._id_offsets = serializer.id_offsets self._id_offsets = serializer.id_offsets

View File

@ -308,6 +308,7 @@ class FlowSplitter(object):
if not hit_split_point: if not hit_split_point:
x = elem.get('id', None) x = elem.get('id', None)
nix_element(elem, top=False) nix_element(elem, top=False)
body2.text = '\n'
return tree, tree2 return tree, tree2

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 30 KiB