emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] babel python example not reproducible


From: Andreas Röhler
Subject: Re: [O] babel python example not reproducible
Date: Thu, 19 Jun 2014 07:57:42 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Icedove/24.6.0

On 18.06.2014 15:59, Eric Schulte wrote:
Shiyuan <address@hidden> writes:

Hi all,
       I found a solution to fix the echo problem of the emacs python shell:
http://stackoverflow.com/questions/8060609/python-interpreter-in-emacs-repeats-lines

That is, in the Interior Python buffer, do
M-: (setq comint-process-echoes t) ;; or nil

Now, if I enter command directly in the interior python buffer, the command
is not echoed and this is what I want.

However, When I evaluate the python src code block in org-mode(by `C-c
C-c`), the problem persists. I notice every time I evaluate the block, I
see 'org_babel_python_eoe' in the interior python buffer.

I  stumbled on a very strange emacs behavior. When I fiddled around, at
some point, I produced the correct answer as the manual. I thought I got
the right setup, but when I saved everything and restarted emacs, problem
persists. Will it be a sign of anything wrong?

What's even stranger is that: the evaluation for the first time gives
different results from the evaluation for the second time,  on exactly the
same src_block:

This is what I got when I evaluation the code block for the first time:
-------------------------------------
#+BEGIN_SRC python :results output :session foo
x=100
print "hello"
2
print "bye"
#+END_SRC

#+RESULTS:
#+begin_example

x=100
print "hello"
hello
2
2
print "bye"
bye


#+end_example
-----------------------------------------------
-------------------------------------------------------

The following is what I got when I evaluate the same block again:
#+BEGIN_SRC python :results output :session foo
x=100
print "hello"
2
print "bye"
#+END_SRC

#+RESULTS:
: x=100
: print "hello"
: hello
: 2
: 2
: print "bye"
: bye
:
:

Notice that the prompt symbol ">>>" is in the result for the first
evaluation but not in the second evaluation.

This issue has been raised before, it is a quirk of how the python
session starts up.  I think we've done what we can to handle this on the
Org-mode side, I'd ask for a fix on the python.el maintainers.


The prompts appear as respond from Python-process when setup-code is sent at 
the beginning.
org-babel already knows how to fetch only the results from last prompt.
Probably separating a first run-python/py-shell from execute-process would do 
it.

Best,

Andreas



reply via email to

[Prev in Thread] Current Thread [Next in Thread]