ThirdParty/Pygments/pygments/lexers/special.py

changeset 4172
4f20dba37ab6
parent 3145
a9de05d4a22f
child 4697
c2e9bf425554
--- a/ThirdParty/Pygments/pygments/lexers/special.py	Wed Mar 11 18:25:37 2015 +0100
+++ b/ThirdParty/Pygments/pygments/lexers/special.py	Wed Mar 11 18:32:27 2015 +0100
@@ -5,18 +5,15 @@
 
     Special lexers.
 
-    :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
+    :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
     :license: BSD, see LICENSE for details.
 """
 
-from __future__ import unicode_literals
-
 import re
-import io
 
 from pygments.lexer import Lexer
 from pygments.token import Token, Error, Text
-from pygments.util import get_choice_opt, b
+from pygments.util import get_choice_opt, text_type, BytesIO
 
 
 __all__ = ['TextLexer', 'RawTokenLexer']
@@ -37,7 +34,8 @@
 
 _ttype_cache = {}
 
-line_re = re.compile(b('.*?\n'))
+line_re = re.compile(b'.*?\n')
+
 
 class RawTokenLexer(Lexer):
     """
@@ -62,12 +60,12 @@
         Lexer.__init__(self, **options)
 
     def get_tokens(self, text):
-        if isinstance(text, str):
+        if isinstance(text, text_type):
             # raw token stream never has any non-ASCII characters
             text = text.encode('ascii')
         if self.compress == 'gz':
             import gzip
-            gzipfile = gzip.GzipFile('', 'rb', 9, io.StringIO(text))
+            gzipfile = gzip.GzipFile('', 'rb', 9, BytesIO(text))
             text = gzipfile.read()
         elif self.compress == 'bz2':
             import bz2
@@ -75,7 +73,7 @@
 
         # do not call Lexer.get_tokens() because we do not want Unicode
         # decoding to occur, and stripping is not optional.
-        text = text.strip(b('\n')) + b('\n')
+        text = text.strip(b'\n') + b'\n'
         for i, t, v in self.get_tokens_unprocessed(text):
             yield t, v
 
@@ -83,9 +81,9 @@
         length = 0
         for match in line_re.finditer(text):
             try:
-                ttypestr, val = match.group().split(b('\t'), 1)
+                ttypestr, val = match.group().split(b'\t', 1)
             except ValueError:
-                val = match.group().decode(self.encoding)
+                val = match.group().decode('ascii', 'replace')
                 ttype = Error
             else:
                 ttype = _ttype_cache.get(ttypestr)

eric ide

mercurial