Looking for a good Python environment
Eric S. Johansson
esj at harvee.org
Wed Nov 14 14:48:22 CET 2007
ram.rachum at gail.com wrote:
> Hey, I'm looking for a good Python environment. That is, at least an editor
> and a debugger, and it should run on Windows. Does anyone have any idea?
I've been looking for the equivalent although I want the IDE to run on Windows
and to be able to edit/debug/bzr files on a remote system (linux in VM or remote
Solutions that I've explored are:
Network filesystems (Samba, NFS)
Emacs plus tramp
eclipse plus remote file access
remote system IDE, local display with X11
local editor plus unison
Here's how they failed:
Network filesystems always fail because they get ownership and permissions
wrong. No matter what you set the mapping to, it's almost always wrong for some
part of the system. It's made worse because setup .py does not make it easy to
force permissions and ownership to what you want them to be (afaik). this
forces the use of an ad hoc script to enforce permissions and ownership after
using this configuration, it is possible to hibernate your Windows machine but
only if you manually restart your remote filesystem connections before trying to
do anything with your IDE.
Emacs plus tramp is the best solution so far albeit somewhat fragile. It's
moderately difficult to jump into the right point in the filesystem although
this may be an artifact of trying to use speech recognition for this task.
another annoying problem is forcing Emacs to use UNIX format text files. I know
I just need to RTF but I haven't gotten around to it yet.
Emacs plus tramp is also the easiest to hibernate as it does not use persistent
connections to remote machine but if the remote host isn't available when you
try to access a file via recentf, you lose the reference to the file and need to
type/speak the path in again.
Eclipse has been an unmitigated disaster for me. It's fat, it's heavy, it
pushes all of my other applications out of virtual memory and then I need to
wait 10s of seconds when I switch. I can't figure out which components of the
bag of parts I need and easy eclipse is too old to use the remote file system
access extension. blech.
Using X11 for local display is great if the remote machine is local and you're
not paging out to virtual memory. most common problem is that the local X11
display loses track of local Windows and you end up with this graphic ink blot
on the screen that never quite goes away until you restart X11 and all the other
applications through it.
with the X11 solution, you cannot hibernate your host machine because the
persistent connections break and cannot be restarted.
local editor plus unison sort of, kind of works. Yes, you can edit all your
files and replicate them on the target machine. Ownership and permissions are
broken. There is a problem with UNIX versus DOS file format but once you force
the editor to do the right thing, the format is right on the remote side. It's
clumsy but it does have the advantage that if you make changes on the remote
system when debugging, those changes are replicated back on your editing house.
As for debugging, personally, I just use winpdb everywhere and just suffer with
bad X11 connections.
One additional factor raised by split machine operations is how do you organize
your files? Do you have different repositories on different machines or do you
have a single repository on your editing host and look to some form of
replication for updates across one or more machines?
it's an interesting set of problems. Today, I just muddle along as I don't
really see a good solution. I'm hoping I'll be proven wrong and find a solution
that will make my life easier someday.
Speech-recognition in use. It makes mistakes, I correct some.
More information about the Python-list