def add_letter(template, letter, pages): refsect1 = tree.SubElement(template, 'refsect1') title = tree.SubElement(refsect1, 'title') title.text = letter para = tree.SubElement(refsect1, 'para') for info in sorted(pages, key=lambda info: str.lower(info[0])): refname, section, purpose, realname = info b = tree.SubElement(para, 'citerefentry') c = tree.SubElement(b, 'refentrytitle') c.text = refname d = tree.SubElement(b, 'manvolnum') d.text = section b.tail = MDASH + purpose # + ' (' + p + ')' tree.SubElement(para, 'sbr')
def _make_section(template, name, directives, formatting): varlist = template.find(".//*[@id='{}']".format(name)) for varname, manpages in sorted(directives.items()): entry = tree.SubElement(varlist, 'varlistentry') term = tree.SubElement(entry, 'term') display = tree.fromstring(formatting[varname]) term.append(display) para = tree.SubElement(tree.SubElement(entry, 'listitem'), 'para') b = None for manpage, manvolume in sorted(set(manpages)): if b is not None: b.tail = ', ' b = tree.SubElement(para, 'citerefentry') c = tree.SubElement(b, 'refentrytitle') c.text = manpage c.attrib['target'] = varname d = tree.SubElement(b, 'manvolnum') d.text = manvolume entry.tail = '\n\n'