-# -*- 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 lxml import etree
-import six
from librarian import get_resource
from . import TreeEmbed, create_embed, downgrades_to
def to_latex(self):
"""
>>> print(MathML(etree.fromstring(
- '<mat>a < b</mat>'
- )).to_latex().data.strip())
+ ... '<mat>a < b</mat>'
+ ... )).to_latex().data.strip())
a < b
>>> print(MathML(etree.fromstring(
- '<mat>< & &lt; A</mat>'
- )).to_latex().data.strip())
+ ... '<mat>< & &lt; A</mat>'
+ ... )).to_latex().data.strip())
< & < A
"""
xslt = etree.parse(get_resource('res/embeds/mathml/mathml2latex.xslt'))
output = self.tree.xslt(xslt)
- text = six.text_type(output)
+ text = str(output)
# Workaround for entities being preserved in output.
# But there should be a better way.
text = text.replace('<', '<').replace('&', '&')