+import atexit
+import os
+import sys
+import readline
+
# Command line history:
-import os, readline
-histfile = os.path.expanduser("~/.pdb-history")
+histfile = os.path.expanduser("~/.pdb_history")
try:
readline.read_history_file(histfile)
except IOError:
pass
+
def savehist(histfile=histfile):
- import os, readline
- histfilesize = os.environ.get('HISTFILESIZE') or \
- os.environ.get('HISTSIZE')
+ import os
+ import readline
+
+ histfilesize = os.environ.get('HISTFILESIZE') \
+ or os.environ.get('HISTSIZE')
if histfilesize:
try:
histfilesize = int(histfilesize)
readline.set_history_length(histfilesize)
readline.write_history_file(histfile)
-import atexit
atexit.register(savehist)
-# return to debugger after fatal exception (Python cookbook 14.5):
-import sys
+
def info(type, value, tb):
+ # return to debugger after fatal exception (Python cookbook 14.5):
+ import pdb
+ import sys
+ import traceback
+
if hasattr(sys, 'ps1') or not sys.stderr.isatty():
sys.__excepthook__(type, value, tb)
- import traceback, pdb
traceback.print_exception(type, value, tb)
print
pdb.pm()
+
sys.excepthook = info
+
# http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/498182
-import pdb, rlcompleter
+import pdb
+import rlcompleter
pdb.Pdb.complete = rlcompleter.Completer().complete
# Cleanup any variables that could otherwise clutter up the namespace.