summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/bdb.py4
-rwxr-xr-xLib/pdb.py14
2 files changed, 13 insertions, 5 deletions
diff --git a/Lib/bdb.py b/Lib/bdb.py
index 9b50767..7642ed0 100644
--- a/Lib/bdb.py
+++ b/Lib/bdb.py
@@ -242,7 +242,7 @@ class Bdb: # Basic Debugger
#
- def format_stack_entry(self, frame_lineno):
+ def format_stack_entry(self, frame_lineno, lprefix=': '):
import linecache, repr, string
frame, lineno = frame_lineno
filename = frame.f_code.co_filename
@@ -260,7 +260,7 @@ class Bdb: # Basic Debugger
s = s + '->'
s = s + repr.repr(rv)
line = linecache.getline(filename, lineno)
- if line: s = s + ': ' + string.strip(line)
+ if line: s = s + lprefix + string.strip(line)
return s
# The following two methods can be called by clients to use
diff --git a/Lib/pdb.py b/Lib/pdb.py
index a77dd29..30b1477 100755
--- a/Lib/pdb.py
+++ b/Lib/pdb.py
@@ -10,6 +10,13 @@ import bdb
import repr
+# Interaction prompt line will separate file and call info from code
+# text using value of line_prefix string. A newline and arrow may
+# be to your liking. You can set it once pdb is imported using the
+# command "pdb.line_prefix = '\n% '".
+# line_prefix = ': ' # Use this to get the old situation back
+line_prefix = '\n-> ' # Probably a better default
+
class Pdb(bdb.Bdb, cmd.Cmd):
def __init__(self):
@@ -55,7 +62,8 @@ class Pdb(bdb.Bdb, cmd.Cmd):
def interaction(self, frame, traceback):
self.setup(frame, traceback)
- self.print_stack_entry(self.stack[self.curindex])
+ self.print_stack_entry(self.stack[self.curindex],
+ line_prefix)
self.cmdloop()
self.forget()
@@ -280,13 +288,13 @@ class Pdb(bdb.Bdb, cmd.Cmd):
except KeyboardInterrupt:
pass
- def print_stack_entry(self, frame_lineno):
+ def print_stack_entry(self, frame_lineno, prompt_prefix=''):
frame, lineno = frame_lineno
if frame is self.curframe:
print '>',
else:
print ' ',
- print self.format_stack_entry(frame_lineno)
+ print self.format_stack_entry(frame_lineno, prompt_prefix)
# Help methods (derived from pdb.doc)