-# 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.
+#
import io
from librarian import OutputFile, get_resource
self.current_margin = 0
self.starting_block = True
- def push_legacy_margin(self, margin):
- if margin:
- if self.pieces:
- self.pieces[-1] = self.pieces[-1].rstrip(' ')
- self.pieces.append('\r\n' * margin)
- self.current_margin += margin
- self.starting_block = True
-
def push_margin(self, margin):
if margin:
if self.pieces:
class TxtBuilder:
"""
"""
+ build_method_fn = 'txt_build'
file_extension = "txt"
identifier = "txt"
+ after_child_fn = 'txt_after_child'
+ debug = False
+ orphans = False
+ normalize_whitespace = True
+
default_license_description = {
"pol": (
- "Ten utwór nie jest objęty majątkowym prawem autorskim "
- "i znajduje się w domenie publicznej, co oznacza że "
- "możesz go swobodnie wykorzystywać, publikować "
- "i rozpowszechniać. Jeśli utwór opatrzony jest "
- "dodatkowymi materiałami (przypisy, motywy literackie "
- "etc.), które podlegają prawu autorskiemu, to te "
- "dodatkowe materiały udostępnione są na licencji "
- "Creative Commons Uznanie Autorstwa – Na Tych Samych "
- "Warunkach 3.0 PL "
- "(http://creativecommons.org/licenses/by-sa/3.0/)"
+ "Wszystkie zasoby Wolnych Lektur możesz swobodnie wykorzystywać, "
+ "publikować i rozpowszechniać pod warunkiem zachowania warunków "
+ "licencji i zgodnie z Zasadami wykorzystania Wolnych Lektur.\n"
+ "Ten utwór jest w domenie publicznej.\n"
+ "Wszystkie materiały dodatkowe (przypisy, motywy literackie) są "
+ "udostępnione na Licencji Wolnej Sztuki 1.3: "
+ "https://artlibre.org/licence/lal/pl/\n"
+ "Fundacja Wolne Lektury zastrzega sobie prawa do wydania "
+ "krytycznego zgodnie z art. Art.99(2) Ustawy o prawach autorskich "
+ "i prawach pokrewnych.\nWykorzystując zasoby z Wolnych Lektur, "
+ "należy pamiętać o zapisach licencji oraz zasadach, które "
+ "spisaliśmy w Zasadach wykorzystania Wolnych Lektur: "
+ "https://wolnelektury.pl/info/zasady-wykorzystania/\nZapoznaj "
+ "się z nimi, zanim udostępnisz dalej nasze książki."
)
}
license_description = {
- "pol": "Ten utwór jest udostępniony na licencji {meta.license_description}: \n{meta.license}",
+ "pol": (
+ #"Ten utwór jest udostępniony na licencji {meta.license_description}: \n{meta.license}",
+ "Wszystkie zasoby Wolnych Lektur możesz swobodnie wykorzystywać, "
+ "publikować i rozpowszechniać pod warunkiem zachowania warunków "
+ "licencji i zgodnie z Zasadami wykorzystania Wolnych Lektur.\n"
+ "Ten utwór jest jest udostępniony na licencji {meta.license_description} ({meta.license}). "
+ "Wszystkie materiały dodatkowe (przypisy, motywy literackie) są "
+ "udostępnione na Licencji Wolnej Sztuki 1.3: "
+ "https://artlibre.org/licence/lal/pl/\n"
+ "Fundacja Wolne Lektury zastrzega sobie prawa do wydania "
+ "krytycznego zgodnie z art. Art.99(2) Ustawy o prawach autorskich "
+ "i prawach pokrewnych.\nWykorzystując zasoby z Wolnych Lektur, "
+ "należy pamiętać o zapisach licencji oraz zasadach, które "
+ "spisaliśmy w Zasadach wykorzystania Wolnych Lektur: "
+ "https://wolnelektury.pl/info/zasady-wykorzystania/\nZapoznaj "
+ "się z nimi, zanim udostępnisz dalej nasze książki."
+ )
}
- def __init__(self):
+ def __init__(self, base_url=None):
self.fragments = {
None: TxtFragment(),
'header': TxtFragment()
def push_margin(self, margin):
self.current_fragments[-1].push_margin(margin)
- def push_legacy_margin(self, margin, where=None):
- self.current_fragments[-1].push_legacy_margin(margin)
-
- def build(self, document, raw_text=False):
+ def build(self, document, raw_text=False, **kwargs):
document.tree.getroot().txt_build(self)
meta = document.meta
for translator in meta.translators
)
)
- #builder.push_margin(2)
- self.push_legacy_margin(1)
+ self.push_margin(2)
if meta.isbn_txt:
- #builder.push_margin(2)
- self.push_legacy_margin(1)
+ self.push_margin(2)
isbn = meta.isbn_txt
if isbn.startswith(('ISBN-' , 'ISBN ')):
isbn = isbn[5:]
self.push_text('ISBN {isbn}'.format(isbn=isbn))
#builder.push_margin(5)
- #builder.push_margin(4)
- self.push_legacy_margin(1)
+ self.push_margin(4)
self.exit_fragment()
- text = ''.join(self.fragments['header'].pieces) + ''.join(self.fragments[None].pieces)
+ text = ''.join(self.fragments[None].pieces).lstrip()
if raw_text:
result = text
else:
+ text = ''.join(self.fragments['header'].pieces) + text
+
if meta.license:
license_description = self.license_description['pol'].format(meta=meta)
else:
funders = ', '.join(meta.funders)
if funders:
- funders = u"\n\nPublikację wsparli i wsparły: %s." % funders
+ funders = "\n\nPublikację wsparli i wsparły: %s." % funders
isbn = getattr(meta, 'isbn_txt', None)
if isbn: