changeset 9:2a8c65d22f86

Moar.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 11 May 2021 09:33:21 +0300
parents ce07bb2a247b
children 013f0cd9e5b3
files lxmldump.py
diffstat 1 files changed, 19 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/lxmldump.py	Tue May 11 02:08:30 2021 +0300
+++ b/lxmldump.py	Tue May 11 09:33:21 2021 +0300
@@ -42,6 +42,7 @@
     "ahavakala",
     "ahavakoittuo",
     "ahvaliha",
+    "aloilleh",
 ]
 
 
@@ -80,17 +81,27 @@
     sys.exit(1)
 
 
+##
+def pkk_ptr_to_text(pnode):
+#    return "PTR: <{}>".format("".join(pnode.itertext()).strip())
+    return "PTR: <{}>".format(xmlET.tostring(pnode))
+
+
 def pkk_get_text(lnode):
     stmp = ""
     for pnode in lnode.iter():
-        if isinstance(pnode.text, str):
-            if pkk_cfg["annotate"] and isinstance(pnode.tag, str) and pnode.tag in pkk_str_fmap:
-                stmp += pkk_str_fmap[pnode.tag][0] + pnode.text + pkk_str_fmap[pnode.tag][1]
-            else:
-                stmp += pnode.text
+        if pnode.tag == "Ptr":
+            stmp += pkk_ptr_to_text(pnode)
+        else:
+            if isinstance(pnode.text, str):
+                ptext = pnode.text
+                if pkk_cfg["annotate"] and isinstance(pnode.tag, str) and pnode.tag in pkk_str_fmap:
+                    stmp += pkk_str_fmap[pnode.tag][0] + ptext + pkk_str_fmap[pnode.tag][1]
+                else:
+                    stmp += ptext
 
-        if isinstance(pnode.tail, str):
-            stmp += pnode.tail
+            if isinstance(pnode.tail, str):
+                stmp += " "+ pnode.tail.strip()
 
     return stmp.strip()
 
@@ -99,7 +110,7 @@
 def pkk_dump_recursive(indent, lnode):
     if lnode.tag in ["Example"]:
         stmp = pkk_get_text(lnode)
-        pkk_printi(indent, "{} \"{}\"".format(lnode.tag, stmp))
+        pkk_printi(indent, "{} \"{}\"\n".format(lnode.tag, stmp))
     else:
         if isinstance(lnode.text, str):
             stmp = lnode.text.strip()