# HG changeset patch # User Matti Hamalainen # Date 1620714801 -10800 # Node ID 2a8c65d22f8647237e048a698b843b4cbe03fac7 # Parent ce07bb2a247b05def2c5f9eb8671814b4de263ec Moar. diff -r ce07bb2a247b -r 2a8c65d22f86 lxmldump.py --- 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()