help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: Multiple prompts when starting inferior Python


From: Rusi
Subject: Re: Multiple prompts when starting inferior Python
Date: Tue, 6 May 2014 20:27:09 -0700 (PDT)
User-agent: G2/1.0

On Tuesday, May 6, 2014 9:47:55 PM UTC+5:30, Joost Kremers wrote:
> Hi,

> Whenever I start an interactive Python session in Emacs, I get four
> empty prompts instead of one. That is, when I do `M-x run-python' (or
> start from a Python file with `C-c C-z'), the *Python* buffer looks like
> this:

> ,----
> | Python 2.7.3 (default, Feb 27 2014, 19:58:35) 
> | Type "copyright", "credits" or "license" for more information.
> | 
> | IPython 0.12.1 -- An enhanced Interactive Python.
> | ?         -> Introduction and overview of IPython's features.
> | %quickref -> Quick reference.
> | help      -> Python's own help system.
> | object?   -> Details about 'object', use 'object??' for extra details.
> | 
> | In [1]: 
> | In [2]: 
> | In [3]: 
> | In [4]: 
> | 
> `----

> I use elpy and IPython, but that doesn't make a difference. This is what
> I get when running an interactive Python shell with `emacs -Q':

> ,----
> | Python 2.7.3 (default, Feb 27 2014, 19:58:35) 
> | [GCC 4.6.3] on linux2
> | Type "help", "copyright", "credits" or "license" for more information.
> `----

> Note the four `>>>'.

> This is something that's been happening a while, and it's never really
> bothered me. However, the other day someone on Reddit asked the same
> question,[1] which prompted me to do some digging. I ran `run-python'
> though the debugger and it seems that those prompts are caused by the
> function `python-shell-send-setup-code', which sends the contents of the
> variables listed in the variable `python-shell-setup-codes' to the
> inferior python process when it's started. The default value of this
> option is:

> ,----
> | (python-shell-completion-setup-code python-ffap-setup-code 
> python-eldoc-setup-code)
> `----

> Each of these variables contains some code which, when sent to the
> inferior python process, results in a new prompt being displayed, even
> though the actual command is not shown.

> Is this something that should be considered a bug? Can it be avoided
> somehow or should I simply live with it? (Which isn't very difficult, it
> doesn't seem to affect anything.)



> [1] 
> http://www.reddit.com/r/emacs/comments/24fy1q/help_get_rid_of_multiple_inputs_when_running_a/


Starting python as this
python -i -c 'import sys; sys.ps1=""'
Makes the >>> disappear.

Then you have to arrange to get it back!


reply via email to

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