-# -*- coding: utf-8
-from __future__ import unicode_literals
-
+# This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
+#
from ..base import WLElement
class Footnote(WLElement):
+ NO_TOC = True
+ DISABLE_NUMBERING = True
+ START_INLINE = True
+ ASIDE = True
+ NUMBERING = 'fn'
+
+ def signal(self, signal):
+ if signal == 'INLINE':
+ self.START_INLINE = False
+ else:
+ super().signal(signal)
+
def txt_build(self, builder):
pass
if not builder.with_footnotes:
return
- builder.footnote_counter += 1
- fn_no = builder.footnote_counter
- footnote_id = 'footnote-idm{}'.format(self.attrib['_compat_ordered_id'])
- anchor_id = 'anchor-idm{}'.format(self.attrib['_compat_ordered_id'])
+ fn_no = self.attrib.get('_visible_numbering')
+ footnote_id = 'footnote-id{}'.format(fn_no)
+ anchor_id = 'anchor-id{}'.format(fn_no)
# Add anchor.
builder.start_element(
builder.enter_fragment('footnotes')
- builder.start_element('p', {
+ builder.start_element('div', {
'id': f'annotation-{fn_no}',
'class': "annotation"
})