[IPython-user] help issues

Fernando Perez Fernando.Perez at colorado.edu
Wed Jun 30 11:18:44 CDT 2004


Arnd Baecker wrote:

> Hmm, there is one thing which I forgot to mention -
> the double-TAB problem:
...
> I don't know if there is a work-around.
> Somehow I think it is a minor inconvenience, but it might
> be confusing to new-comers.

Well, it's doable, though right now I don't think I have the time to tackle 
it.  You'd have to do it specifically for scipy, but that's what iptyhon 
profiles are for: you'd modify the completer method of the main ipython class, 
and force it to call internally an import on scipy up to the last dot if the 
word being completed starts with 'scipy'.  You basically need to bypass the 
fancy scipy lazy importer by forcing it to do a true import dynamically.

If you feel this really matters, feel free to file a wish on the ipython 
bugtracker.  That way we won't forget, and at some point it will get done. 
It's actually not that hard.

>>Yes, autoindent is now on by default (it has always existed).  But it means
>>that before you paste code, you _must_ turn it off or you'll end up with
>>misindented text.  @autoindent will toggle it back and forth for you.
> 
> 
> If there was a way to bind (e.g.) CTRL-P (or whatever character)
> to toggling this, that would be great.
> (So before pasting CTRL-P and after that back to the auto-indent mode.
> But, as far as I know, there is no way to do that
> binding via readline (please correct me - readline gurus!).

This, I don't know.  My readline knowledge is very limited, but I don't see a 
way to do it.  Note that C-P is bound to search-backwards-in-history.  I agree 
that it would be nice to have a keystroke instead of a full-blown command, but 
  I know too little about readline to do this.

> Somehow I thought I had it on my wish-list, suggesting that
> it is not implemented (saying something like this normally
> invokes your time-machine and maybe that's what just happened here,
> who will be able to tell?;-)

That's the problem with my time machine: even _I_ am subject to it, so once I 
use it, my own timeline changes.  So we'll never _really_ know if I had 
implemented @autoindent a while back (as I claim) or if your request activated 
the time machine.  I need to have it log to a parallel universe so we can 
resolve these minor points later.  But that won't work until I have the 
multithreaded ipython, so I can run the time machine's logger on another thread :)


> >But I'm willing to reconsider the wisdom of having it on by default if you
>>think this will lead to too much user confusion.
> 
> 
> I think it is a good default (apart from pasting thing ;-)

Ok.  So it stays, then.

Best,

f




More information about the IPython-user mailing list