All pastes #178745 Raw Edit

Miscellany

public text v1 · immutable
#178745 ·published 2006-09-21 15:25 UTC
rendered paste body
def wiki_to_html(wikitext, env, absurls=False, escape_newlines=False):
    if not wikitext:
        return Markup()
    out = StringIO()
    x = Formatter(env, absurls)
    x.format(wikitext, out, escape_newlines)
    toc_html = '<div id="toc">\n%s\n</div>' % toc_row(x, "root")
    return '%s%s\n<div class="cb"></div>' % (toc_html, Markup(out.getvalue()))

def toc_row(env, row):
	if row not in env._toc:
		return
	tmp = "<ol>"
	for row in env._toc[row]:
		tmp = "%s\n<li><a href=\"#%s\">%s</a>" % (tmp, row[0], row[1])
		x = toc_row(env, row[0])
		if x:
			tmp = "%s\n%s\n" % (tmp, x)
		tmp = "%s</li>" % tmp
	tmp = "%s\n</ol>" % tmp
	return tmp