]> git.ipfire.org Git - thirdparty/systemd.git/blame - tools/xml_helper.py
Merge pull request #33377 from yuwata/strbuf-cleanups
[thirdparty/systemd.git] / tools / xml_helper.py
CommitLineData
3e67e5c9 1#!/usr/bin/env python3
db9ecf05 2# SPDX-License-Identifier: LGPL-2.1-or-later
1a13e31d 3
21ac6ff1 4from lxml import etree as tree
1a13e31d 5
54a9070c 6
21ac6ff1 7class CustomResolver(tree.Resolver):
54a9070c 8 def resolve(self, url, _id, context):
21ac6ff1
ZJS
9 if 'custom-entities.ent' in url:
10 return self.resolve_filename('man/custom-entities.ent', context)
c18dde32
ZJS
11 if 'ethtool-link-mode' in url:
12 return self.resolve_filename('src/shared/ethtool-link-mode.xml', context)
1a13e31d 13
54a9070c
FS
14 return None
15
32dcef3a 16_parser = tree.XMLParser()
54a9070c 17# pylint: disable=no-member
32dcef3a 18_parser.resolvers.add(CustomResolver())
35df7443 19
32dcef3a
ZJS
20def xml_parse(page):
21 doc = tree.parse(page, _parser)
22 doc.xinclude()
23 return doc
35df7443 24
32dcef3a
ZJS
25def xml_print(xml):
26 return tree.tostring(xml, pretty_print=True, encoding='utf-8')