def _add_inline_line_numbers_to_text(text): markup_text = '<div class="codehilite"><pre>' for line_num, line in enumerate(text.splitlines(), 1): markup_text = markup_text + '<span id="l%s" class="code_block"><span class="lineno">%s</span> %s</span>' % ( line_num, line_num, line) markup_text = markup_text + '</pre></div>' return markup_text
def _add_inline_line_numbers_to_text(text): markup_text = '<div class="codehilite"><pre>' for line_num, line in enumerate(text.splitlines(), 1): markup_text = markup_text + \ '<span id="l%s" class="code_block"><span class="lineno">%s</span> %s</span>' % ( line_num, line_num, line) markup_text = markup_text + '</pre></div>' return markup_text
def _add_table_line_numbers_to_text(text): def _prepend_whitespaces(num, max_num): num, max_num = str(num), str(max_num) diff = len(max_num) - len(num) return ' ' * diff + num def _len_to_str_column(l, start=1): max_num = l + start return '\n'.join(map(_prepend_whitespaces, range(start, max_num), [max_num] * l)) lines = text.splitlines(True) linenumbers = '<td class="linenos"><div class="linenodiv"><pre>' + _len_to_str_column(len(lines)) + '</pre></div></td>' markup_text = '<table class="codehilitetable"><tbody><tr>' + linenumbers + '<td class="code"><div class="codehilite"><pre>' for line_num, line in enumerate(lines, 1): markup_text = markup_text + '<span id="l%s" class="code_block">%s</span>' % (line_num, line) markup_text = markup_text + '</pre></div></td></tr></tbody></table>' return markup_text