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. > Also the result is not embedded in the #+being_example/#+end_example > for the second evaluation. > Yes, short examples are examplized with ":" instead of the heavier weight example blocks. The results are functionally equivalent, but you can customize the size at which different methods are used by changing the `org-babel-min-lines-for-block-output' variable. > > I want to hunt down the problem. Any hints/helps is greatly appreciated. > Hope this helps. Sadly Emacs python support is sub-par and as a consumer, Org-mode python code blocks suffer. Best, > > Shiyuan > > > > > On Mon, Jun 16, 2014 at 9:12 AM, Doyley, Marvin <mdoy...@ur.rochester.edu> > wrote: > >> Hi Eric, >> >> Thanks for showing me the smart way of doing this. >> >> cheers, >> M >> -- >> >> >> >> -- Eric Schulte https://cs.unm.edu/~eschulte PGP: 0x614CA05D (see https://u.fsf.org/yw)