chiark / gitweb /
man: use lxml for faster generation and pretty printing
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 8 Mar 2013 01:13:40 +0000 (20:13 -0500)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 9 Mar 2013 13:47:50 +0000 (08:47 -0500)
README
make-directive-index.py
make-man-index.py

diff --git a/README b/README
index 9d7a54769d5f1c6564a10f36f1df1524a257bd76..b8d1f42e254676193c6aeacc1385d0d98e22bd3f 100644 (file)
--- a/README
+++ b/README
@@ -116,6 +116,7 @@ REQUIREMENTS:
         gtkdocize (optional)
         python (optional)
         sphinx (optional)
         gtkdocize (optional)
         python (optional)
         sphinx (optional)
+        python-lxml (entirely optional)
 
         When systemd-hostnamed is used it is strongly recommended to
         install nss-myhostname to ensure that in a world of
 
         When systemd-hostnamed is used it is strongly recommended to
         install nss-myhostname to ensure that in a world of
index c61383b0a46482e46f3e94c2f956d01b7fea607f..039efaa4345001fe4f22fa16c07c3fcc55ae632b 100755 (executable)
 
 import sys
 import collections
 
 import sys
 import collections
-import xml.etree.ElementTree as tree
+try:
+    from lxml import etree as tree
+    PRETTY = dict(pretty_print=True)
+except ImportError:
+    import xml.etree.ElementTree as tree
+    PRETTY = {}
 import re
 
 TEMPLATE = '''\
 import re
 
 TEMPLATE = '''\
@@ -277,4 +282,4 @@ def make_page(*xml_files):
     return _make_page(template, directive_groups, formatting)
 
 if __name__ == '__main__':
     return _make_page(template, directive_groups, formatting)
 
 if __name__ == '__main__':
-    tree.dump(make_page(*sys.argv[1:]))
+    tree.dump(make_page(*sys.argv[1:]), **PRETTY)
index d38d5b63f64feaf6328a1877058d03b23f006746..d9ab5cc7525f35222de6e0c0f4f7f004b465dfc0 100755 (executable)
 #  along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
 import collections
 #  along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
 import collections
-import xml.etree.ElementTree as tree
+try:
+    from lxml import etree as tree
+    PRETTY = dict(pretty_print=True)
+except ImportError:
+    import xml.etree.ElementTree as tree
+    PRETTY = {}
 import sys
 import re
 MDASH = ' — ' if sys.version_info.major >= 3 else ' -- '
 import sys
 import re
 MDASH = ' — ' if sys.version_info.major >= 3 else ' -- '
@@ -130,4 +135,4 @@ def make_page(xml_files):
     return template
 
 if __name__ == '__main__':
     return template
 
 if __name__ == '__main__':
-    tree.dump(make_page(sys.argv[1:]))
+    tree.dump(make_page(sys.argv[1:]), **PRETTY)