Personal tools
You are here: Home Blog pdb in VIM : vimpdb 0.3 released

pdb in VIM : vimpdb 0.3 released

Integration of Pdb into VIM.

I always felt I miss context when I use Pdb. I mean that I do not see enough lines of code around the one I am stepping on.

I am a deeply convinced VIM user.

EMACS users, please do not flame, it just happened that I started with VIM. I could have started with EMACS but I am too lazy to start to learn again.

When Stefan Eletzhofer relased vimpdb almost two years ago, I immediately tried it. However, I did not use it further as using VIM menus to drive Pdb was far from convenient.

Last fall, Stefan released vimpdbhook, another attempt to integrate Pdb into VIM. Again, it was still not that usable and it was restricted to Mac users.

This time, however, I felt I had to scratch the itch. I started to improve vimpdbhook. This lead me to a better understanding of both and communication to VIM.

Lastly, Jean-Francois Roche and I used our flights from and to PyCon 2010 to hack on vimpdbhook. We ended reusing good ideas/code from vimpdb and from VimPdb.vim. It worked well and the result is something pretty usable.

We released a new version of vimpdb : 0.3.2

I would like to thank Stefan of kindly accepting that we release the new code under the same package name.

It is still work in progress. We need to ease setup and to improve the UI in VIM.

Hereunder, an excerpt from the README.


Using vimpdb is easy -- just call set_trace as usual:

import vimpdb; vimpdb.set_trace()

Now, when the python interpreter hits that line, VIM will get the focus and load the source file.

Now you'll be able to use the following commands:

VimPDB Commands
Key Command
n Next
s Step
a Args
u Up
d Down
r Return
c Continue
b Sets a breakpoint at the line on which the cursor is sitting.
w Displays the value of the word on which the cursor is sitting.
x Switch to debugging with standard Pdb.
v Switch back to VimPdb from plain Pdb.


Please let us know what works for you and what does not.

If you feel like fixing bugs or adding features, the code is available at .


Document Actions