X-Git-Url: https://vcs.fsf.org/?p=rainbowstream.git;a=blobdiff_plain;f=rainbowstream%2Fpy3patch.py;h=adfbff281ebe64f1bb52b1b6fa7aa792cfddba48;hp=e1eec6e2ef70fc2827a622af7afc0689f75caa64;hb=3f6bfc205123dfb813405ef72ff38d9f67590565;hpb=c3bab4ef2c05950ac280571d9b3575beb5203b31 diff --git a/rainbowstream/py3patch.py b/rainbowstream/py3patch.py index e1eec6e..adfbff2 100644 --- a/rainbowstream/py3patch.py +++ b/rainbowstream/py3patch.py @@ -5,15 +5,24 @@ import sys # StringIO module try: - from StringIO import StringIO + from StringIO import StringIO, BytesIO except: - from io import StringIO + from io import StringIO, BytesIO -# raw_input and map functiion behaviour -if sys.version[0]=="3": - raw_input = input - lmap = lambda f,a: list(map(f,a)) +# HTMLParser module +if sys.version[0] == "2": + from HTMLParser import HTMLParser else: - lmap = lambda f,a: map(f,a) - + from html.parser import HTMLParser +unescape = HTMLParser().unescape +# According to https://github.com/python/cpython/blob/master/Lib/html/parser.py#L547 , +# in python 3.5 maybe I should use +# from html import unescape +# but it is a far-future story:) +# raw_input and map function behaviour +if sys.version[0] == "2": + lmap = lambda f, a: map(f, a) +else: + raw_input = input + lmap = lambda f, a: list(map(f, a))