[IPython-dev] Line-based frontends - architecture

Brian Granger ellisonbg@gmail....
Thu Feb 7 18:19:46 CST 2013


But the double meaning of enter in the terminal based IPython is not a
deliberate design choice - it is only due to the limitation of the
terminal.  Put another way - If the plain readline based terminal was
able to detect shift-enter keyboard events, regular IPython, from day
1, would distinguish between enter (newline) and shit-enter (run
code).  Trying to override the meaning of enter to be two different
things is not something we want to ever do unless we are absolutely
forced to.  Case in point - I have some private code that starts to
implement a console style web UI for IPython - it still uses
shift-enter to run code and the user experience is great...





On Thu, Feb 7, 2013 at 3:40 PM, Thomas Kluyver <takowl@gmail.com> wrote:
> On 7 February 2013 22:28, Brian Granger <ellisonbg@gmail.com> wrote:
>>
>> I don't think anything needs to be done at all.  The problems with
>> detecting a "finished" block of code arises only in environments that
>> are truly line oriented.  Browsers don't suffere from that limitation.
>
>
> I think it's a question of the user interface, not the display technology.
> If we want the same key to automatically do 'execute' or 'next line' as
> appropriate, we need a way of distinguishing which to do. In the notebook,
> we use shift-return/ctrl-return for execute, so it's not required. But for a
> console interface, having return automatically execute or produce another
> line is extremely convenient and intuitive.
>
> Thomas
>
> _______________________________________________
> IPython-dev mailing list
> IPython-dev@scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
>



--
Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

On Thu, Feb 7, 2013 at 3:40 PM, Thomas Kluyver <takowl@gmail.com> wrote:
> On 7 February 2013 22:28, Brian Granger <ellisonbg@gmail.com> wrote:
>>
>> I don't think anything needs to be done at all.  The problems with
>> detecting a "finished" block of code arises only in environments that
>> are truly line oriented.  Browsers don't suffere from that limitation.
>
>
> I think it's a question of the user interface, not the display technology.
> If we want the same key to automatically do 'execute' or 'next line' as
> appropriate, we need a way of distinguishing which to do. In the notebook,
> we use shift-return/ctrl-return for execute, so it's not required. But for a
> console interface, having return automatically execute or produce another
> line is extremely convenient and intuitive.
>
> Thomas
>
> _______________________________________________
> IPython-dev mailing list
> IPython-dev@scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
>



-- 
Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com


More information about the IPython-dev mailing list