X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fpython%2Finit.py;h=0e33d094ffd5ed895d3ab29214d9ed7002e3bbb5;hb=22bd70edb3ca2408153a5b31c1bd58a721ede1fa;hp=7ef24db2a9b9ce34c289300e31d1beff1aaf5dc8;hpb=7f5eb416029fbcd33bb4e1b2dd78c43ac279456f;p=dotfiles.git diff --git a/lib/python/init.py b/lib/python/init.py index 7ef24db..0e33d09 100644 --- a/lib/python/init.py +++ b/lib/python/init.py @@ -9,7 +9,10 @@ def init(): - import __builtin__ + try: + import __builtin__ as builtins + except ImportError: + import builtins import os import sys @@ -33,22 +36,21 @@ def init(): or os.path.expanduser('~/.inputrc') readline.read_init_file(initfile) - histfile = os.path.expanduser('~/.python-history') + histfile = os.path.expanduser('~/.python_history') try: readline.read_history_file(histfile) except IOError: pass # No such file def savehist(): - histfilesize = os.environ.get('HISTFILESIZE') \ - or os.environ.get('HISTSIZE') - if histfilesize: + histsize = os.environ.get('HISTSIZE') + if histsize: try: - histfilesize = int(histfilesize) + histsize = int(histsize) except ValueError: pass else: - readline.set_history_length(histfilesize) + readline.set_history_length(histsize) readline.write_history_file(histfile) import atexit @@ -133,13 +135,15 @@ def init(): class BasePager: def write(self, value): - self.stdin.write(value) + self.stdout.write(value) def pprint(self, value): - pprint(value, stream=self.stdin) + pprint(value, + stream=ColoredFile(self.stdout, + '\033[1;3%sm' % stdout_color)) def close(self): - self.stdin.close() + self.stdout.close() try: from subprocess import Popen, PIPE @@ -147,7 +151,7 @@ def init(): class Pager(BasePager): def __init__(self): self.pipe = Popen(pager, shell=True, stdin=PIPE) - self.stdin = self.pipe.stdin + self.stdout = self.pipe.stdin def close(self): BasePager.close(self) @@ -155,11 +159,11 @@ def init(): else: class Pager(BasePager): def __init__(self): - self.stdin = os.popen(pager, 'w') + self.stdout = os.popen(pager, 'w') def displayhook(value): if value is not None: - __builtin__._ = value + builtins._ = value pager = Pager() pager.pprint(value) pager.close() @@ -178,6 +182,14 @@ def init(): sys.excepthook = excepthook + #try: + # import cgitb + #except ImportError: + # pass + #else: + # # cgitb.enable() overrides sys.excepthook + # cgitb.enable(format='text') + # From Thomas Heller: # https://mail.python.org/pipermail/python-list/2001-April/099020.html @@ -221,8 +233,8 @@ def init(): path = os.path.expanduser(os.path.expandvars(path or '~')) os.chdir(path) - __builtin__.ls = DirLister() - __builtin__.cd = DirChanger() + builtins.ls = DirLister() + builtins.cd = DirChanger() # print working directory @@ -233,7 +245,7 @@ def init(): def __call__(self): return repr(self) - __builtin__.pwd = Pwd() + builtins.pwd = Pwd() # exit REPL with 'exit', 'quit' or simple 'x' @@ -244,11 +256,11 @@ def init(): def __call__(self, msg=None): sys.exit(msg) - __builtin__.x = _Exit() + builtins.x = _Exit() # In Python 2.5+ exit and quit are objects - if isinstance(__builtin__.exit, str): - __builtin__.exit = __builtin__.quit = x # noqa: x is defined as _Exit + if isinstance(builtins.exit, str): + builtins.exit = builtins.quit = x # noqa: x is defined as _Exit # print conten of a file @@ -260,9 +272,9 @@ def init(): fp = open(filename, 'rU') text = fp.read() fp.close() - print text + print(text) - __builtin__.cat = _Cat() + builtins.cat = _Cat() # call shell @@ -274,7 +286,7 @@ def init(): def __call__(self, cmdline): os.system(cmdline) - __builtin__.sh = _Sh() + builtins.sh = _Sh() # paginate a file @@ -285,7 +297,7 @@ def init(): def __call__(self, filename): os.system("%s '%s'" % (pager, filename.replace("'", '"\'"'))) - __builtin__.pager = _Pager() + builtins.pager = _Pager() # edit a file @@ -298,7 +310,7 @@ def init(): or os.environ.get("EDITOR") or 'vi' os.system("%s '%s'" % (editor, filename.replace("'", '"\'"'))) - __builtin__.edit = __builtin__.editor = _Editor() + builtins.edit = builtins.editor = _Editor() init()