summaryrefslogtreecommitdiff
path: root/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight
diff options
context:
space:
mode:
Diffstat (limited to 'eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight')
-rw-r--r--eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.py61
-rw-r--r--eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.pyobin2545 -> 0 bytes
-rw-r--r--eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.py61
-rw-r--r--eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.pyobin2358 -> 0 bytes
4 files changed, 0 insertions, 122 deletions
diff --git a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.py b/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.py
deleted file mode 100644
index 55e3c18..0000000
--- a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# highlight - syntax highlighting in hgweb, based on Pygments
-#
-# Copyright 2008, 2009 Patrick Mezard <pmezard@gmail.com> and others
-#
-# This software may be used and distributed according to the terms of the
-# GNU General Public License version 2 or any later version.
-#
-# The original module was split in an interface and an implementation
-# file to defer pygments loading and speedup extension setup.
-
-"""syntax highlighting for hgweb (requires Pygments)
-
-It depends on the Pygments syntax highlighting library:
-http://pygments.org/
-
-There is a single configuration option::
-
- [web]
- pygments_style = <style>
-
-The default is 'colorful'.
-"""
-
-import highlight
-from mercurial.hgweb import webcommands, webutil, common
-from mercurial import extensions, encoding
-
-def filerevision_highlight(orig, web, tmpl, fctx):
- mt = ''.join(tmpl('mimetype', encoding=encoding.encoding))
- # only pygmentize for mimetype containing 'html' so we both match
- # 'text/html' and possibly 'application/xhtml+xml' in the future
- # so that we don't have to touch the extension when the mimetype
- # for a template changes; also hgweb optimizes the case that a
- # raw file is sent using rawfile() and doesn't call us, so we
- # can't clash with the file's content-type here in case we
- # pygmentize a html file
- if 'html' in mt:
- style = web.config('web', 'pygments_style', 'colorful')
- highlight.pygmentize('fileline', fctx, style, tmpl)
- return orig(web, tmpl, fctx)
-
-def annotate_highlight(orig, web, req, tmpl):
- mt = ''.join(tmpl('mimetype', encoding=encoding.encoding))
- if 'html' in mt:
- fctx = webutil.filectx(web.repo, req)
- style = web.config('web', 'pygments_style', 'colorful')
- highlight.pygmentize('annotateline', fctx, style, tmpl)
- return orig(web, req, tmpl)
-
-def generate_css(web, req, tmpl):
- pg_style = web.config('web', 'pygments_style', 'colorful')
- fmter = highlight.HtmlFormatter(style = pg_style)
- req.respond(common.HTTP_OK, 'text/css')
- return ['/* pygments_style = %s */\n\n' % pg_style, fmter.get_style_defs('')]
-
-def extsetup():
- # monkeypatch in the new version
- extensions.wrapfunction(webcommands, '_filerevision', filerevision_highlight)
- extensions.wrapfunction(webcommands, 'annotate', annotate_highlight)
- webcommands.highlightcss = generate_css
- webcommands.__all__.append('highlightcss')
diff --git a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.pyo b/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.pyo
deleted file mode 100644
index eb0ba63..0000000
--- a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/__init__.pyo
+++ /dev/null
Binary files differ
diff --git a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.py b/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.py
deleted file mode 100644
index a8265cf..0000000
--- a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# highlight.py - highlight extension implementation file
-#
-# Copyright 2007-2009 Adam Hupp <adam@hupp.org> and others
-#
-# This software may be used and distributed according to the terms of the
-# GNU General Public License version 2 or any later version.
-#
-# The original module was split in an interface and an implementation
-# file to defer pygments loading and speedup extension setup.
-
-from mercurial import demandimport
-demandimport.ignore.extend(['pkgutil', 'pkg_resources', '__main__'])
-from mercurial import util, encoding
-
-from pygments import highlight
-from pygments.util import ClassNotFound
-from pygments.lexers import guess_lexer, guess_lexer_for_filename, TextLexer
-from pygments.formatters import HtmlFormatter
-
-SYNTAX_CSS = ('\n<link rel="stylesheet" href="{url}highlightcss" '
- 'type="text/css" />')
-
-def pygmentize(field, fctx, style, tmpl):
-
- # append a <link ...> to the syntax highlighting css
- old_header = tmpl.load('header')
- if SYNTAX_CSS not in old_header:
- new_header = old_header + SYNTAX_CSS
- tmpl.cache['header'] = new_header
-
- text = fctx.data()
- if util.binary(text):
- return
-
- # Pygments is best used with Unicode strings:
- # <http://pygments.org/docs/unicode/>
- text = text.decode(encoding.encoding, 'replace')
-
- # To get multi-line strings right, we can't format line-by-line
- try:
- lexer = guess_lexer_for_filename(fctx.path(), text[:1024])
- except (ClassNotFound, ValueError):
- try:
- lexer = guess_lexer(text[:1024])
- except (ClassNotFound, ValueError):
- lexer = TextLexer()
-
- formatter = HtmlFormatter(style=style)
-
- colorized = highlight(text, lexer, formatter)
- # strip wrapping div
- colorized = colorized[:colorized.find('\n</pre>')]
- colorized = colorized[colorized.find('<pre>')+5:]
- coloriter = (s.encode(encoding.encoding, 'replace')
- for s in colorized.splitlines())
-
- tmpl.filters['colorize'] = lambda x: coloriter.next()
-
- oldl = tmpl.cache[field]
- newl = oldl.replace('line|escape', 'line|colorize')
- tmpl.cache[field] = newl
diff --git a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.pyo b/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.pyo
deleted file mode 100644
index 7d10f48..0000000
--- a/eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/hgext/highlight/highlight.pyo
+++ /dev/null
Binary files differ