Die Registerkarte IPython vervollständigt nur einige Module
Ich verwende die EPD-Version von Python und IPython. Nach der Installation einiger Module mit easy_install stelle ich fest, dass sie zwar importiert werden können, jedoch nicht durch Tabulatoren vervollständigt werden können. Sie existieren auf dem Pfad aber, solange Module enthalten sind (Pylab, Readline, Mathe)können abgeschlossen werden, können diese neuen Module nicht.
Weiß jemand, worauf ich achten sollte, um das Problem zu finden? Ich habe überprüft, ob sich die Pakete an derselben Stelle befinden wie andere Module:
In [1]: import pylab
In [2]: pylab
Out[2]: <module 'pylab' from '/Library/Frameworks/Python.framework/Versions/5.0.0/lib/python2.5/site-packages/pylab.pyc'>
In [3]: import BeautifulSoup
In [4]: BeautifulSoup
Out[4]: <module 'BeautifulSoup' from '/Library/Frameworks/Python.framework/Versions/5.0.0/lib/python2.5/site-packages/BeautifulSoup-3.1.0.1-py2.5.egg/BeautifulSoup.pyc'>
Vielleicht etwas nicht mit dem.eggs
korrekt? Vielen Dank.
Aktualisieren: Ich habe den Beitrag von gnibbler weiterverfolgt und festgestellt, dass die Tab-Vervollständigung eine Ausnahme in Zeile 633 in completer.py trifft:
try:
ret = self.matches[state].replace(magic_prefix,magic_escape)
return ret
except IndexError:
return None
Aber was ist die Ursache für das Scheitern ...
Aktualisieren:
In [5]: from Bea<tab_here>
*** COMPLETE: <Bea> (0)
matches: []
state: 0
Das heißt also nur, dass die Trefferliste eine leere Menge ist: Es gibt keine Treffer. Das Modul wird immer noch nicht gefunden. Ich werde versuchen zu untersuchen, womatches
wird die Module suchen, wenn ich Zeit habe.