##// END OF EJS Templates
Support multiline input in --simple-prompt (fixes: #9816)
Ximin Luo -
Show More
@@ -101,7 +101,7 b' class TerminalInteractiveShell(InteractiveShell):'
101 _pt_app = None
101 _pt_app = None
102
102
103 simple_prompt = Bool(_use_simple_prompt,
103 simple_prompt = Bool(_use_simple_prompt,
104 help="""Use `raw_input` for the REPL, without completion, multiline input, and prompt colors.
104 help="""Use `raw_input` for the REPL, without completion and prompt colors.
105
105
106 Useful when controlling IPython as a subprocess, and piping STDIN/OUT/ERR. Known usage are:
106 Useful when controlling IPython as a subprocess, and piping STDIN/OUT/ERR. Known usage are:
107 IPython own testing machinery, and emacs inferior-shell integration through elpy.
107 IPython own testing machinery, and emacs inferior-shell integration through elpy.
@@ -227,7 +227,14 b' class TerminalInteractiveShell(InteractiveShell):'
227 # Fall back to plain non-interactive output for tests.
227 # Fall back to plain non-interactive output for tests.
228 # This is very limited, and only accepts a single line.
228 # This is very limited, and only accepts a single line.
229 def prompt():
229 def prompt():
230 return input('In [%d]: ' % self.execution_count)
230 isp = self.input_splitter
231 prompt_text = 'In [%d]: ' % self.execution_count
232 prompt_continuation = ("%%%ds" % len(prompt_text)) % '...: '
233 while isp.push_accepts_more():
234 line = cast_unicode_py2(input(prompt_text))
235 isp.push(line)
236 prompt_text = prompt_continuation
237 return isp.source_reset()
231 self.prompt_for_code = prompt
238 self.prompt_for_code = prompt
232 return
239 return
233
240
General Comments 0
You need to be logged in to leave comments. Login now