def get_table(self, lang): phonemes = self.inv_dic[lang] phono_string = ', '.join(self.all_phonemes[phoneme] for phoneme in phonemes) out = StringIO() out.write('<div class="phono_tables"><h3>%s</h3>' % (lang.split('#')[0])) if self.lang_dic[lang]["code"] == '0': code = '-' else: code = self.lang_dic[lang]["code"] out.write('<p><b>Ethnologue code:</b> %s</p>' % code) out.write('<p><b>Family:</b> %s</p>' % self.lang_dic[lang]["gen"][0]) if self.lang_dic[lang]["gen"][1]: out.write('<p><b>Group:</b> %s</p>' % self.lang_dic[lang]["gen"][1]) else: out.write('<p><b>Group:</b> %s</p>' % "–") out.write(processInventory(lang, phono_string, False)) # Vowels and consonants. if self.lang_dic[lang]["tones"]: out.write("<h4>Tones</h2><p>%s</p>\n" % ', '.join(self.lang_dic[lang]["tones"])) if self.lang_dic[lang]["syllab"]: out.write("<h4>Syllable structure</h2><p>%s</p>\n" % self.lang_dic[lang]["syllab"]) if self.lang_dic[lang]["cluster"]: out.write("<h4>Initial clusters</h2><p>%s</p>\n" % self.lang_dic[lang]["cluster"]) if self.lang_dic[lang]["finals"]: out.write("<h4>Word-final clusters and segments</h2><p>%s</p>\n" % self.lang_dic[lang]["finals"]) out.write("<h4>Source</h3><p>%s</p>\n" % self.lang_dic[lang]["source"]) if self.lang_dic[lang]["comment"]: out.write("<h4>Commentary</h3><p>%s</p>\n" % self.lang_dic[lang]["comment"]) out.write("<h4>Added by</h3><p>%s</p>\n" % self.lang_dic[lang]["contr"]) out.write('</div>') return out.getvalue()
def get_common_table(self, langs_to_report): common_phonemes = set.intersection(*[self.inv_dic[lang] for lang in langs_to_report]) phono_string = ', '.join(self.all_phonemes[phoneme] for phoneme in common_phonemes) if not phono_string: return "" else: return processInventory("Common phonemes", phono_string, True)