Andreas Röhler <andreas.roeh...@easy-emacs.de> writes: > On 18.06.2014 15:59, Eric Schulte wrote: >> Shiyuan <gshy2...@gmail.com> 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. >
I don't follow the above with sufficient clarity to implement your suggestion. Could you provide a patch to the `org-babel-python-initiate-session-by-key' function? Thanks, Eric > > Best, > > Andreas -- Eric Schulte https://cs.unm.edu/~eschulte PGP: 0x614CA05D (see https://u.fsf.org/yw)