fish37 (fish37) wrote,

Evaluating expressions in PyDev (Eclipse plug-in for Python)

I use PyDev because, probably like many, I am used to Eclipse for Java development. What I found useful is highlighting a snippet (expression) in a debug session and doing Ctrl+Shift+D to evaluate it, and I miss this in PyDev. A crude workaround is to add this expression to Watch list, but that grows the Watch list and is not convenient: I not only have to do right-click Watch and then look in the Watch list, but also may need to scroll that list, and remove things, etc. That's not what I am used to. So I threw together a crude implementation of it.

The change is in the org.python.pydev.debug project:

  1. Added EvalExpressionAction class to org.python.pydev.debug.ui.actions package.

  2. Changed the plugin.xml

  3. The MANIFEST.MF thus includes two additional bundles in Require-Bundle: field: org.eclipse.core.expressions and org.eclipse.jdt.debug.ui. (Well, the second one is only for the second keystroke - "persisting" the value in the Display view, and only because I was lazy at this point. But also, since this thing relies on other org.eclipse.jdt stuff, I figured it's not a big deal).

    Another problem here is that I couldn't figure out how to do Ctrl+Shift+D the second time for persisting; so Ctrl+Shift+D works to display in a popup, and Ctrl+Shift+S does the persisting. (The choice of "S" is since when I press Ctrl+Shift+D my index finger is on D and so it's easy and fast to use the middle finger to press S immediately :). But that still is close to what I am used to blindly press. People get used to all sorts of weird keystrokes and go out of their way to reproduce them in their new environment, just witness viPlugin for Eclipse.

Of course, as I went to announce this on the list, I saw that PyDev already has a slightly different mechanism for that. O well, at least this way still saves me some keystrokes and I learned that the Console view is also a Python shell. (That's cause I never RTFM)... But at least I was not the only one...

So anyway, this seems to work in my environment; just unzip into the Eclipse folder - and do so at your own risk...

Tags: contrib, eclipse, pydev, python

  • (no subject)

    Am I hopelessly confused, but can't "APIs to facilitate sharing connections between [AJAX] frameworks and components" can already be done, at least…

  • That's it, done...

    That's it, done! Bassem (Max) Jamaleddine Prof.Madden finally approved the latest version of Dbdb write-up, and so I am all set for my…

  • It's Friday...

    Stop the insanity! (*) to krotty. FP! The endsingularity is near. Hear, hear! IFOWONGO!!!.…

  • Post a new comment


    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment