Download raw (828 bytes)
#! /usr/bin/env python2 from BeautifulSoup import BeautifulSoup from pygments.formatters import HtmlFormatter from pygments import highlight from pygments.lexers import RebolLexer from sys import argv f = open(argv[1]) code = f.read() f.close() soup = highlight(code, RebolLexer(), HtmlFormatter()) soup = soup.replace('\n', '<br />') soup = BeautifulSoup(soup) count = 0 for node in soup.findAll(text=True): i = 0 chunks = node.split() newString = "" for chunk in chunks: count += 1 if i == len(chunks): newString += """<span id="c_%04d" class="chunk">%s</span>""" % (count, chunk) else: newString += """<span id="c_%04d" class="chunk">%s </span>""" % (count, chunk) i += 1 node.replaceWith(newString) print(str(soup).replace('<br />', '\n'))