Best Python editor (under Linux)

Peter Hansen peter at engcorp.com
Fri Jan 3 15:10:39 CET 2003


Harry George wrote:
> 
> Let's stay on topic, which is editing for python.
> 
> I've trained up a dozen or so newbies on python over the last few
> years.  I always offer them the option of their favorite editor.  We
> get some vim, emacs, nedit, notepad, idle, jot, and others I can't
> remember.  But when it gets serious, as in XP sessions (two people on
> one keyboard), the emacs guys are far more productive.  As far as I
> can tell, the vim guys are faster keystroke-by-keystroke, but the
> emacs guys are more productive overall.  The notepad guys weren't
> productive enough to be a fair sampling of the editor itself (they
> weren't really programmers).  I haven't seen enough experienced idle
> or scintilla people to have an opinion there.

To avoid interpreting your comments as pure mysticism, I would need
to know specifically what features you find to be "far more 
productive" with emacs.

I've found that I'm much more productive with almost any editor than
some other programmers, whether they use vim, emacs, or Codewright.
Those using emacs do tend to be pretty fast, but so far I can conclude
only that they are "hacker types" who feel comfortable in a text-mode
environment like Linux and who type pretty fast.  Even so, they're
no faster than I am (typing 70+ words per minute).

On the other hand, moving from a trivial editor like Notepad in Windows,
to something with proper automatic indentation gives me a huge increase
in productivity, especially with Python.

Next biggest increase in productivity comes from syntax highlighting,
and the fact that it emphasizes many types of error immediately.

Beyond that, I could point to a small handful of producivity-enhancers,
such as automatic save on loss of focus, and multi-file editing,
but *none* of these are implemented only in emacs.

So what is it?  I really can't believe (yet) that a different set 
of keyboard bindings and a macro language I wouldn't use on a regular
basis would lead to a really measurable performance increase. 
(And let me say that a 10% boost is not measurable, while a 50% one
might be.)

Looking forward to gaining a little enlightenment about emacs, which
I've avoided studiously since it was created.

(For the record, I'm currently using Scite a fair bit, and with Python
code find it highly effective.  I wish it would auto-save *all* changed
files instead of just the selected one, but other than that I don't
know what else I would bother adding.)

-Peter




More information about the Python-list mailing list