EPUB_ATTR = {}
EPUB_CLASS = None
EPUB_START_CHUNK = False
-
+
+ FB2_TAG = None
+
CAN_HAVE_TEXT = True
STRIP = False
NUMBERING = None
return text
- def _build_inner(self, builder, build_method):
+ def build_inner(self, builder):
+ build_method = builder.build_method_fn
child_count = len(self)
if self.CAN_HAVE_TEXT and self.text:
text = self.normalize_text(self.text, builder)
def txt_after_child(self, builder, child_count):
pass
- def _txt_build_inner(self, builder):
- self._build_inner(builder, 'txt_build')
+ def txt_build_inner(self, builder):
+ self.build_inner(builder)
def txt_build(self, builder):
builder.push_margin(self.TXT_TOP_MARGIN)
builder.push_text(self.TXT_PREFIX, True)
- self._txt_build_inner(builder)
+ self.txt_build_inner(builder)
builder.push_text(self.TXT_SUFFIX, True)
builder.push_margin(self.TXT_BOTTOM_MARGIN)
- def _html_build_inner(self, builder):
- self._build_inner(builder, 'html_build')
+ def html_build_inner(self, builder):
+ self.build_inner(builder)
def get_html_attr(self, builder):
attr = self.HTML_ATTR.copy()
self.get_html_attr(builder),
)
- self._html_build_inner(builder)
+ self.html_build_inner(builder)
if self.HTML_TAG:
builder.end_element()
- def _epub_build_inner(self, builder):
- self._build_inner(builder, 'epub_build')
+ def fb2_build(self, builder):
+ if self.SECTION_PRECEDENCE:
+ builder.start_section(self.SECTION_PRECEDENCE)
+ builder.start_element('title')
+ builder.start_element('p')
+
+ if self.FB2_TAG:
+ builder.start_element(
+ self.FB2_TAG,
+ #self.get_fb2_attr(builder),
+ )
+
+ self.build_inner(builder)
+ if self.FB2_TAG:
+ builder.end_element()
+ if self.SECTION_PRECEDENCE:
+ builder.end_element()
+ builder.end_element()
+
+ def epub_build_inner(self, builder):
+ self.build_inner(builder)
def get_epub_attr(self, builder):
attr = self.EPUB_ATTR.copy()
attr
)
- self._epub_build_inner(builder)
+ self.epub_build_inner(builder)
if self.EPUB_TAG:
builder.end_element()
prefix = 'f' # default numbering prefix
return prefix
- def assign_id(self, builder):
+ def assign_id(self, document):
numbering = self.numbering
if numbering:
- number = str(builder.counters[numbering])
+ number = str(document.counters[numbering])
self.attrib['_id'] = self.id_prefix + number
- builder.counters[numbering] += 1
+ document.counters[numbering] += 1
if numbering == 'main':
- self.attrib['_visible_numbering'] = str(builder.counters['_visible'])
- builder.counters['_visible'] += 1
+ self.attrib['_visible_numbering'] = str(document.counters['_visible'])
+ document.counters['_visible'] += 1
if numbering == 'fn':
self.attrib['_visible_numbering'] = number