[IPython-user] [IPython-dev] IPython development news and prospects
Wed Jan 16 12:21:08 CST 2008
On Jan 15, 2008 3:33 PM, Laurent Dufréchou <email@example.com> wrote:
> Hi ipythoners,
> Warning long mail... which main subject is GUI with ipython
> ***************** GUI integration ************************
> Just some thought on Ipython GUI integration:
> I've worked a little on one of the implementation of Ipython GUI integration
> inside WX.
> I've just discovered a big problem of my current implementation: I'm
> creating an Ipython instance inside a thread and send it some line to
> The good thing is that the thread class is GUI toolkit independent --> good
> The bad point is that prabhu asked me if it was possible to let say call
> ipython with -wthread or -qthread.
> (which is a good idea for example to develop a QTapp with wxIpython ^_^)
> It seems that it is not possible or hard to do.(not tried a lot but from
> I've seen...).
> So my question is:
> Many people seems to be interested in GUI frontend for ipython, don't you
> think it could be interesting to create a process whis a ipython instance
> inside (the same as the wxIpython thread class in fact) and The GUI
> wx,QT,everything else discuss with it via a network protocol like xml-rpc.
> (I'm not software programmer so sure you will have better idea for
> communication protocol:), I said xml-rpc because it's a base module of
> So the Gui part will only manage user interaction and will make ipython
> process core execute line, get history and so on.
> >From what I've seen from now the interace only needs a few function to
> support ipython features (history,magic,tab_completion...)
> This also could be reused with ipython1 later as the GUI interface will not
> change only how we manage ipython1 inside the process
> (well perhaps it's more tricky :) )
I'd put in a big vote for using Twisted for this. There's already
Twisted integration for most UI toolkits (including GTK, Wx, Qt, and
Cocoa). Since ipython1 is already invested in Twisted, it seems to
make sense to leverage that experience.
More information about the IPython-user