[IPython-dev] Terminal-based frontend
wackywendell at gmail.com
Sun Aug 8 10:43:09 EDT 2010
Excellent, sounds great! I'm busy for a few days, but I will be
looking into that soon.
On 08/06/2010 08:37 PM, Fernando Perez wrote:
> Hey Wendell,
> Sorry for the slow reply...
> On Wed, Aug 4, 2010 at 1:03 PM, Wendell Smith<wackywendell at gmail.com> wrote:
>> I'm still working steadily away at a terminal frontend with fancy stuff like
>> input coloring, auto-help, auto-complete, etc. - I was calling it
>> 'curses-based' earlier, but now that its urwid-based, it isn't based on the
>> curses library... but its the same idea. If you want to look at my progress,
>> please use 'git clone git://github.com/wackywendell/ipyurwid.git', and
>> follow the directions in the README.
>> Anyways, although there is plenty still to do with the widgets, it's come
>> far enough for me to start worrying about integrating into ipython. I
>> haven't touched that as I've been waiting for the dust to settle around
>> pyzmq, but... I think its time.
>> What I'm looking for ideally is a ipython-frontend class I can use that lets
>> me send and receive input/output, and also has methods for running help on
>> an object, source lookup, completion possibilities for a word, etc. I
>> noticed the old frontend classes are gone; what are the plans to replace
>> them? I'd be happy to be involved with that, too, if that would be helpful -
>> but I don't want to step on anyone's toes, and also there are, I'm sure, a
>> lot of different things that are wanted out of that... what's the status on
>> that? How could I be helpful there?
>> Let me know...
> Fantastic or horrible timing, depending on how you want to think of it
> :) Fantastic because we're doing a TON of work in this direction,
> horrible because things are changing *right now* under you in this
> regard, and it may be a few weeks before they stabilize. And during
> this big 'digging in the foundation' period, we may be a bit
> bandwidth-constrained to coordinate things. All the same, I'll try to
> summarize things now in the best way possible, so you can both see
> what's going on and provide feedback. We hope to have precisely what
> you are asking for in place soon (some of it already exists), so as
> long as you don't mind the mess on the floor, come on in :)
> The short version: we have currently three separate clients being
> built for IPython, all on top of the little zeromq prototype that
> Brian and I wrote a few months ago. Two of these have been built as
> part of the Google Summer of Code project by Gerardo and Omar, one by
> Evan Patterson from Enthought. Here are their branches:
> - Evan: a qt-based widget with a very 'terminal-like' feel that feeds
> single blocks of code to the kernel.
> - Gerardo: a qt-based widget with a more 'notebook-like' feel that
> feeds cells (lists of blocks) to the kernel.
> - Omar: a terminal-based frontend that feels much like today's ipython.
> These three ultimately are meant to share a lot of code, but because
> things are all happening at the same time, right now their merge
> status is a bit funky. But the immediate plan is to finalize the
> kernel/frontend protocol and have enough of a kernel in place with the
> official protocol for all clients to be able to work against a common
> interface. As we work through, we'll see what can be refactored into
> common codes for all frontends, what can be common to similar
> frontends (qt ones, terminal ones, etc) and what will be unique to
> Probably the best place for you to look at right now is Evan's work,
> where the main abstractions are falling into place, and which Gerardo
> and Omar are gradually merging into their own lines.
> Also, we're doing our best to hang out in #ipython on the freenode IRC
> server when we're actively doing IPython work, so feel free to jump in
> there with questions for any of us.
> Best regards,
More information about the IPython-dev