From 1a68760eb61cfc4cd4bf437c7f28d1a9474ae327 Mon Sep 17 00:00:00 2001 From: Paul Goins Date: Sun, 14 Mar 2010 18:28:38 +0900 Subject: [PATCH] Added variants. KANJIDIC2 parser rewrite should be essentially complete. --- jbparse/jbparse/kanjidic2.py | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/jbparse/jbparse/kanjidic2.py b/jbparse/jbparse/kanjidic2.py index 16c1320..dba0ff9 100644 --- a/jbparse/jbparse/kanjidic2.py +++ b/jbparse/jbparse/kanjidic2.py @@ -260,6 +260,15 @@ class Kanjidic2Node(object): pieces.append(u"%s: %s" % (key.upper(), o.text)) return pieces + def get_variants(self): + pieces = [] + d = self._get_attrdict("misc/variant", "var_type") + for key in sorted(d): + nodes = d[key] + for o in nodes: + pieces.append(u"%s: %s" % (key.upper(), o.text)) + return pieces + def _get_radical_name_nodes(self): return self.xml.findall("misc/rad_name") @@ -318,20 +327,25 @@ class Kanjidic2Node(object): pieces.append(u"-" * 70) pieces.append(_(u"Other information:")) + pieces.append(_(u" Radicals:")) rad_strs = indent_strs(self.get_radicals(), amount=4) pieces.extend(rad_strs) - pieces.append(_(u" Codepoints:")) - cp_strs = indent_strs(self.get_codepoints(), amount=4) - pieces.extend(cp_strs) - # MISC node children - #variant_strs = self.get_variants() # AKA cross refs radnames = self.get_radical_names() if radnames: pieces.append(u" %s: %s" % (_(u"Radical names"), radnames)) + pieces.append(_(u" Codepoints:")) + cp_strs = indent_strs(self.get_codepoints(), amount=4) + pieces.extend(cp_strs) + + variant_strs = indent_strs(self.get_variants(), amount=4) + if variant_strs: + pieces.append(_(u" Variants:")) + pieces.extend(variant_strs) + pieces.append(u"=" * 70) return u"\n".join(pieces) -- 2.11.4.GIT