Python's IDLE does this as well. It's hugely frustrating in other REPLs (irb, iPython) to type out a 5-line block only to find that you missed a keystroke on line 2. I'm hoping there's a keyboard shortcut I don't know about.
It does work in ipython it just is annoying to navigate and you have to rely on the automatic indenting a bit more if you are adding anything (as the ...: is missing).
Unless of course you mean history through different sessions as that doesn't work for full functions.
Indents are included with a simple up arrow with ipython, it also works if you are doing a backwards search (C-r), it just doesn't have the nice formatting you get when you first write the function.
Comments
Python's IDLE does this as well. It's hugely frustrating in other REPLs (irb, iPython) to type out a 5-line block only to find that you missed a keystroke on line 2. I'm hoping there's a keyboard shortcut I don't know about.
It does work in ipython it just is annoying to navigate and you have to rely on the automatic indenting a bit more if you are adding anything (as the ...: is missing).
Unless of course you mean history through different sessions as that doesn't work for full functions.
With IDLE a quick Ctrl-P will bring up the entire previous block input, including indents, all at once.
Indents are included with a simple up arrow with ipython, it also works if you are doing a backwards search (C-r), it just doesn't have the nice formatting you get when you first write the function.
Idle is a bit easier to edit the function though.