Fix #1716. For real this time?

This commit is contained in:
Marshall T. Vandegrift 2009-01-28 18:27:09 -05:00
parent 763ceacafb
commit 0c57045cf8

View File

@ -561,27 +561,16 @@ class Processor(Parser):
for elem in self.detected_chapters: for elem in self.detected_chapters:
text = u' '.join([t.strip() for t in elem.xpath('descendant::text()')]) text = u' '.join([t.strip() for t in elem.xpath('descendant::text()')])
self.log_info('\tDetected chapter: %s', text[:50]) self.log_info('\tDetected chapter: %s', text[:50])
if self.opts.chapter_mark != 'none': chapter_mark = self.opts.chapter_mark
hr = etree.Element('hr') if chapter_mark == 'none':
if elem.getprevious() is None: continue
elem.getparent()[:0] = [hr] elif chapter_mark == 'rule':
elif elem.getparent() is not None: mark = etree.Element('hr')
insert = None elif chapter_mark == 'pagebreak':
for i, c in enumerate(elem.getparent()): mark = etree.Element('div', style='page-break-after: always')
if c is elem: else: # chapter_mark == 'both':
insert = i mark = etree.Element('hr', style='page-break-before: always')
break elem.addprevious(mark)
elem.getparent()[insert:insert] = [hr]
if self.opts.chapter_mark != 'rule':
hr.set('style', 'width:0pt;page-break-before:always')
if self.opts.chapter_mark == 'both':
hr2 = etree.Element('hr')
hr2.tail = u'\u00a0'
p = hr.getparent()
i = p.index(hr)
p[i:i] = [hr2]
def save(self): def save(self):
style_path = os.path.splitext(os.path.basename(self.save_path()))[0] style_path = os.path.splitext(os.path.basename(self.save_path()))[0]