Subject: Re: bug#17304: Python mode delays evaluation

From: Eli Zaretskii <[email-masked]>
Date: Sat, 03 May 2014 09:20:38 +0300

> From: Glenn Morris <[email-masked]>
> Date: Fri, 02 May 2014 21:16:35 -0400
> Cc: [email-masked]
> 
> Márton Marczell wrote:
> 
> > When I run a Python 3.3.4 prompt inside Emacs 24.3 on Windows 7, correct
> > commands are evaluated immediately, but incorrect ones are delayed (I have
> > to press Enter one more time), as seen below:
> >
> >     >>> 1
> >     1
> >     >>> nonsense
> >     >>>
> >     Traceback (most recent call last):
> >     File "<stdin>", line 1, in <module>
> >     NameError: name 'nonsense' is not defined
> [...]
> > In GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601)
> 
> FWIW, I cannot reproduce this with Emacs 24.3 and Python 3.4.0 on GNU/Linux.

Probably because of buffering differences: pipes are fully buffered on
Windows, even those used for stderr.  If that is indeed the case, I
don't think this problem can be fixed in Emacs.

To the OP: do you have the same problem if you redirect Python's
output streams in the shell, using "2>&1 |" ?  The other side of the
pipe could be cat.exe, for example.