X-Git-Url: https://jfr.im/git/z_archive/twitter.git/blobdiff_plain/f7e6380227ca479157ce8d4e782772ca9b732b71..87ad04c3a798bf3ddac5545aa482e543b103334a:/twitter/util.py?ds=sidebyside diff --git a/twitter/util.py b/twitter/util.py index 76283cd..b6e95c6 100644 --- a/twitter/util.py +++ b/twitter/util.py @@ -7,11 +7,30 @@ Internal utility functions. import re -from html.entities import name2codepoint +try: + from html.entities import name2codepoint +except ImportError: + from htmlentitydefs import name2codepoint def htmlentitydecode(s): return re.sub( - '&(%s);' % '|'.join(name2codepoint), + '&(%s);' % '|'.join(name2codepoint), lambda m: chr(name2codepoint[m.group(1)]), s) -__all__ = ["htmlentitydecode"] +def smrt_input(globals_, locals_, ps1=">>> ", ps2="... "): + inputs = [] + while True: + if inputs: + prompt = ps2 + else: + prompt = ps1 + inputs.append(input(prompt)) + try: + ret = eval('\n'.join(inputs), globals_, locals_) + if ret: + print(ret) + return + except SyntaxError: + pass + +__all__ = ["htmlentitydecode", "smrt_input"]