[IPython-dev] Improvement of IPython Pdb

Vivian De Smedt vivian at vdesmedt.com
Sat Sep 24 13:12:13 EDT 2005


Dear IPython developpers,

You will find a patch proposition that improve the IPython debugger.
Here is a list of the think it improve.

The Pdb debugger output code line in various occasions.
 - The current line each time the code pointer move (after step, 
continue, up, down, ..., commands are triggered)
 - Part of the code listing when the list command is used
 - One line of each frame when the were command is used
 - ....

The classic Pdb debugger output that code in black and white.

The new IPython debugger output that same code in color (according to 
the color scheme of IPython) with the same format used by IPython to 
output the stack of trace back when an exception is not catched by the 
python code.

The classic Pdb debugger signal the breakpoint with a 'B' in front of 
the line it is positioned.

The new IPython debugger signal the breakpoint with a red number (bright 
is the breakpoint in enabled, dark otherwise) with the advantage that:
 - it is easy to know the breakpoint index (to enable or disable or 
clear them with the corresponding debugger commands)
 - the status of the breakpoint is visible
 - it is in color (I like colors)

With the current IPython debugger the completion list do not take into 
account the frame context of the running code. It is stuck to the 
IPython namespace. In particular it will no make suggestions for local 
variable name.

The new IPython debugger fix that situation now the completion mecanism 
is adapted to the running code making suggestion for both local and 
global variable names of the runing program and it will return to the 
one of the IPython namespace when the debugger return.

I'm impatient to know how you appreciate these new features and to learn 
from you how to improve this new debugger.
I hope you will accept this patch (I'll be to proud to contribute to 
such nice software)

Kindest regards,
Vivian.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch.txt
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20050924/714bf51c/attachment.txt>


More information about the IPython-dev mailing list