New to python, do I need an IDE or is vim still good enough?

Chris Angelico rosuav at
Sat Dec 29 22:21:44 CET 2012

On Sun, Dec 30, 2012 at 6:52 AM, Roy Smith <roy at> wrote:
> Chris Angelico <rosuav at> wrote:
> [regarding
>> Bracket matching
>> Language-sensitive auto-indentation
>> and automatically indents
> Yeah, what he said, plus syntax coloring.  And keyword highlighting.
> And autocompletion of variable names.

Syntax coloring I kinda touched on in different pieces; keyword
highlighting isn't, imho, all that important. Apart from reminding you
that the variable name you planned to use is an obscure keyword, it
doesn't save all that much time. Auto-complete is handy, but not

> And parsing of error messages.
> I'll pause a moment to let that sink in.  Grok the fullness of just how
> awesome a feature it is.

And how glaring an omission from my list. Yes. This one *definitely*
belongs there. Though unlike most of the other examples, it's not as
language-specific; you can cover a huge number of utilities by simply

filename:line: message

Coupled with a helpful C compiler, this lets you jump around pretty
easily. For instance, gcc will (if I recall correctly - haven't had to
use this feature in a while, something to do with writing more code in
Python and Pike than C, but anyway), if the arguments to a function
mismatch, show error lines highlighting both the invocation *and* the
declaration, so you can quickly compare (even if they're in different

> emacs will parse that, highlight the filenames and line numbers and if I
> type M-`, it'll take me to the line of the next error (including opening
> the file if it's not already open).
> I assume other smart editors have similar capabilities.

Yeah, SciTE has F4 and Shift-F4 to cycle forwards/backwards through
messages, and I expect it's pretty much standard among editors that
can invoke external tools. It's extremely handy; not only errors from
compilation/execution, but things like a 'git grep -n' fit too.


More information about the Python-list mailing list