Interactive Python programming in ... vi [was: Tab wars revisited]

Jacek Generowicz jacek.generowicz at
Fri Jul 16 10:58:59 CEST 2004

Mark 'Kamikaze' Hughes <kamikaze at> writes:

> Jacek Generowicz <jacek.generowicz at>
> wrote on 15 Jul 2004 09:18:09 +0200:
> > Mark 'Kamikaze' Hughes <kamikaze at> writes:
> >>   Simple way: Select the block of code you want to execute with V and
> >> motion keys, then !python^M
> > This looks like it sends each code snippet to a new interpreter
>   It sends the entire selected block to a new interpreter, yes.  Not
> each line to a different interpreter, if that's what you're trying to
> say.

Don't be a moron.

> > ... which is pretty useless for interactive incremental development.
>   Not so.  I do that all the time, and it's extremely useful for quickly
> getting a value or for complex text manipulation.

Emacs allows me to interact with a continuously live instance of the
Python interpreter. This enables me to type code directly in the
interactive Python REPL (thereby updating its state), it allows me to
send the contents of whole Emacs buffers to the very same instance of
the intepreter (thereby updating its state), and it allows me to send
selections of Emacs buffers to the very same instance of the
interpreter (thereby updating its state). This offeres a very powerful
_incremental_ development environment.

By comparison, sending a whole block to a _new_ interpreter _is_
pretty useless.

> > Sorry, too complex for me. I'll try to find a vim user and try to work
> > out with him, whether this is of any use.
>   So rather than read a brief, carefully-written article which is
> included in Vim itself, you'd rather waste the time of someone else and
> make them recite the same information from memory?

As you observe, it is included in vim itself. When I try to read it,
it beeps at me; I am not a vi user. Therefore I propose to go to
someone who 

a) _is_ a vi user (so the damn thing won't beep at him)

b) cares about incremental programming in Python with vi

c) is more likely to understand what it means.

If, together, we can work something out, it would be _useful_ to said
person (and many others).

So quit pratting around with the editor war crap, and the ad-hominem
bullshit. I am trying to find out how to make life easier for people
who attend my Python course and who prefer using vi to Emacs
... because I have no desire to convent happy vi users to Emacs. There
is no point in trying to persuade me to use vi, because I am
extatically happy with the editor I use.

If you want to help me help vi users, and have the knowledge, then
please contribute it ... otherwise sod the $%^& off. Incremental
Python development in vi is of no personal interest to me, and if I
have to put up with your moronic insults to get at it, it becomes less
likely that I will bother ... so a few more vi users will continue to
be less productive that they might be.

More information about the Python-list mailing list