jonathanslenders / ptpdb

prompt_toolkit/ptpython pdb frontend
183 stars 20 forks source link

Add option to support IPython shell #6

Open msabramo opened 9 years ago

msabramo commented 9 years ago

Do:

import ptpdb; ptpdb.set_trace(ipython=True)

and you get an IPython shell. My favorite part of this is that I can use the IPython ? and ?? commands.

e.g.:

[marca@marca-mac2 smstack-test]$ python foo.py
[0] > /private/tmp/smstack-test/foo.py(5)<module>()
-> c = 7
(pdb) a
4
(pdb) n
[0] > /private/tmp/smstack-test/foo.py(6)<module>()
-> c = 8
In [1]: import subprocess
In [1]: subprocess.Popen?
Type:           type
String Form:    <class 'subprocess.Popen'>
File:           /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py
Docstring:      None
Constructor information:
 Definition:    subprocess.Popen(args, bufsize=0, executable=None, stdin=None, stdout=None, stderr=None, preexec_fn=None, close_fds=False, shell=False, cwd=None, env=None, universal_newlines=False, startupinfo=None, creationflags=0)
 Docstring:     Create new Popen instance.