[IPython-dev] Ipython1 sync frontend crash
gael.varoquaux at normalesup.org
Sat Aug 30 16:35:49 EDT 2008
On Sat, Aug 30, 2008 at 06:44:10PM +0200, Laurent Dufrechou wrote:
> - How can I be able to be in sync with your branch with bzr. Is
> there any danger?
There is danger of me introducing bugs in the frontend, and you finding
them :). This would however be useful to QA the frontend.
The way you can do it, is simply keep pulling (or merging) from my
branch into your branch. Bzr makes this really easy.
> - If I want to change your class to look/behave like my ipython0
> widget, I think I should copy IPythonXController and then modify it to
> match my needs.
Hum, I think you shouldn't. I think you should sub-class it. As a general
rule, having to copy something is the sign of bad software design. If you
find yourself having to copy, I would be happy if you tell me, as this
might be the sign of a design mistake on my side.
> Is it the good way to do? Or do you prefer I hack directly inside
No. However, I am open to suggestions if you find design fault in the
frontend. I will not add code taylored to specific needs, subclasses are
ment for this, but we may find that the way things that are impossible to
do by subclassing, and this may reveal design faults.
> Ho I've also just seen a little bug :
> IN: __IP.
> Then press tab makes a string index out of range. Should be easy to solve.
Yes. Thank you. I have fixed that.
> I think you should allow else iPython completion or Scintilla one not
> both.(Perhaps this bug come from there?) (On vista, I've got the two
> completion at the same time)
IMHO, this is a feature. Well, not exactly: the fact that the drop-down
menu still pops up after pressing tab is not great, but it is the only
way I have found yet to keep the drop-down menu up. That drop down menu
is really nice, I love it, and I still want it. It should just disappear
when the tab key is pressed, and come back when needed. The problem is
finding the right heuristic for "when needed". I agree that this still
could use some more work.
More information about the IPython-dev