2014-06-17 13 views
5

Ich habe dieses komische Problem - ich lerne Gtk3 auf Windows 7 mit PyCharm Community 3.4.1. Wenn ich versuche, Gtk zu importieren:PyCharm - Autocomplete für Gtk3 funktioniert auf magische Weise

from gi.repository import Gtk 

unterstreicht Gtk als ungelöste Referenz, becouse es ein binäres Modul ist. Dann drücke ich Alt + Enter und wähle "Methon Stubs für binäres Modul ..." und warte bis es die Indexierung beendet hat. Dann schreibe ich glücklich, dieses einfache leere Fenster mit dem automatischen Vervollständigung richtig funktioniert:

class Okienko(Gtk.Window): 
    def __init__(self): 
     Gtk.Window.__init__(self, title='Okienko') 

app = Okienko() 
app.connect('delete-event', Gtk.main_quit) 
app.show_all() 
Gtk.main() 

ich es laufen, es zeigt mir ein schönes leere Gtk Fenster. So weit, ist es gut.

ABER.

Schlechte Dinge passieren - Autovervollständigung für Gtk-Modul verschwindet einfach! from gi.repository import Gtk wird rot unterstrichen und Autocomplete gibt mir nur die Namen, die ich vorher benutzt habe (Window und main in diesem Fall). Das einzige, was ich tun kann, ist Cache zu inaktivieren und Pycharm neu zu starten und diese Prozedur erneut zu durchlaufen ... Ich habe auch .NET-Klassen in IronPython ausprobiert - es ist sogar noch schlimmer, die Indexierung dauert einige Minuten und wird nicht beendet.

Antwort

7

Ich hatte das gleiche Problem und stellte fest, dass die Datei Gtk.py zu groß für die von PyCharm erlaubte IDE-Dateigröße ist. Ich habe den Config-Wert "idea.max.intellisense.filesize" in idea.properties von 2500 auf 10000 geändert. Die Generierung der Stubs dauert einige Zeit, endet aber jetzt.

Hoffe, dass sogar Windows-Benutzer hilft. Feedback geschätzt.

+1

Dies ist das gleiche für die Professional Edition, kann bestätigen, dass dies funktioniert. Für Ubuntu ist es /opt/pycharm/bin/idea.properties – PvdL

7

In PyCharm Community Edition 3.4.1 (mint 17), arbeitet Gtk3 Auto-Vervollständigung zu machen:

  1. In-Datei: "pycharm.community-3.4.1/bin/idea.properties" Kommentar der Zeile: "idea.max.intellisense.filesize = 2500"
  2. die IDE neu starten
  3. In Ihrem Code: von gi.repository Import Gtk strike Alt-Enter und wählen Sie "für Binärmodul Stubs erzeugen"
+1

Dies ist das gleiche für die Professional Edition, kann bestätigen, dass dies funktioniert. Für Ubuntu ist es /opt/pycharm/bin/idea.properties – PvdL

+1

JetBrains Produkte haben jetzt eine _Help> Benutzerdefinierte Eigenschaften bearbeiten ..._ Menüpunkt, mit dem Sie einfachen Zugriff auf eine Datei für Benutzer überschreibt die idea.properties. Dieselbe Lösung funktioniert, aber jetzt müssen Sie einen Eintrag hinzufügen, um das Standardlimit zu erhöhen: 'idee.max.intellisense.filesize = 10000'. – MithrilTuxedo