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

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


On Sun, Dec 30, 2012 at 6:52 AM, Roy Smith <roy at panix.com> wrote:
> Chris Angelico <rosuav at gmail.com> 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
critical.

> 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
recognizing:

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
files).

> 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.

ChrisA



More information about the Python-list mailing list