equal
deleted
inserted
replaced
8 # The original module was split in an interface and an implementation |
8 # The original module was split in an interface and an implementation |
9 # file to defer pygments loading and speedup extension setup. |
9 # file to defer pygments loading and speedup extension setup. |
10 |
10 |
11 from mercurial import demandimport |
11 from mercurial import demandimport |
12 demandimport.ignore.extend(['pkgutil', 'pkg_resources', '__main__',]) |
12 demandimport.ignore.extend(['pkgutil', 'pkg_resources', '__main__',]) |
13 |
|
14 from mercurial import util, encoding |
13 from mercurial import util, encoding |
15 from mercurial.templatefilters import filters |
|
16 |
14 |
17 from pygments import highlight |
15 from pygments import highlight |
18 from pygments.util import ClassNotFound |
16 from pygments.util import ClassNotFound |
19 from pygments.lexers import guess_lexer, guess_lexer_for_filename, TextLexer |
17 from pygments.lexers import guess_lexer, guess_lexer_for_filename, TextLexer |
20 from pygments.formatters import HtmlFormatter |
18 from pygments.formatters import HtmlFormatter |
53 # strip wrapping div |
51 # strip wrapping div |
54 colorized = colorized[:colorized.find('\n</pre>')] |
52 colorized = colorized[:colorized.find('\n</pre>')] |
55 colorized = colorized[colorized.find('<pre>')+5:] |
53 colorized = colorized[colorized.find('<pre>')+5:] |
56 coloriter = iter(colorized.splitlines()) |
54 coloriter = iter(colorized.splitlines()) |
57 |
55 |
58 filters['colorize'] = lambda x: coloriter.next() |
56 tmpl.filters['colorize'] = lambda x: coloriter.next() |
59 |
57 |
60 oldl = tmpl.cache[field] |
58 oldl = tmpl.cache[field] |
61 newl = oldl.replace('line|escape', 'line|colorize') |
59 newl = oldl.replace('line|escape', 'line|colorize') |
62 tmpl.cache[field] = newl |
60 tmpl.cache[field] = newl |