[IPython-dev] embedding ipython

David Mashburn david.n.mashburn at gmail.com
Mon May 17 15:44:11 EDT 2010


Just wanted to put in my support as well!  I love the idea of a common 
wx/qt code base for ipython!

Just fyi, I am the current maintainer of the wx.py suite of tools 
(written by Patrick O'Brien: PyCrust and now the notebook version, 
PySlices).  If you haven't looked at it lately, you might want to check 
it out:
http://code.google.com/p/wxpysuite/

I have built in a number of concepts into the notebook interface:

* Re-editable multi-command code blocks
* Input and output cells (called "slices") that can be folded, created, 
deleted, split and merged.
* An "almost python" save format for input and output that can be run as 
a regular python script if no magic features are used.

I've been hacking on the project for several years now and use it all 
the time in my work in physics.

That said, I really like ipython and would love to see some solid 
ipython GUI tools with threading support and other features that are too 
much for me to tackle by myself in my small project.  So if I can help 
with ipython's gui, I'll be happy to!

I've really enjoyed hacking PySlices together and learned some things 
about code blocks and the interactive interpreter.  I'm sure some of the 
ways I have done things are good and others are less than ideal, but I 
thought you might like to see how someone else did it and at least share 
some ideas.

Let me know where I can help!

Thanks,
-David

P.S.
I've also got some ideas about using unicode with python that are a 
little off the beaten path... you can see what I mean if you check out 
SymPySlices...  :-)


Gael Varoquaux wrote:
> On Thu, May 13, 2010 at 01:41:25AM -0700, Fernando Perez wrote:
>   
>> Currently we have the 'small and light' ipythonx widget that Gael
>> wrote and the more featureful wxipython that Laurent wrote, but these
>> share very little.  Having someone work on a Wx-based tool that gets
>> the best of these and is developed on the updated apis we now have
>> would be fantastic.
>>     
>
> I have been following very lightly what is going on in the IPython world
> with regards to front end and interactive use. I must say that I am very
> excited by what I hear. It looks like you guys are finally opening the
> road to a solid architecture and well-designed GUI applications using
> IPython. 
>
> If someone is going to set off to write a newer Wx frontend, I think that
> the best way to do it would be to take the current one, 'carve out'
> anything that is not purely wx-related and throw it away, to replace it
> with the same core than the currently-developped Qt work (and maybe
> eastablish a link with the web projects that Ondrej was mentioning). 
>
> I had to go through 'interesting' hoops to get the right 'feeling' for an
> interactive frontend without any threads (for instance instant updates to
> the screen as the code was printing messages). The new developments 
> will enable to avoid these workarounds. Some of the Wx code with timers
> and 'wx.Yield' can thus probably go away, although I don't know the new
> archicture and can't really invest time to give an educated opinion.
>
> The Wx-related code for keyboard events processing, cursor movement, and
> printing to screen is probably useful, on the other hand.
>
> So I would say: hack with no restriction, rip my old code to pieces,
> there is no point having legacy and hacky code lying around when we can
> do much better. I will take no offence in having this code fully
> re-written.
>
> Cheers,
>
> Gaƫl
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
>   




More information about the IPython-dev mailing list