Code Vervollständigung wie?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Samstag 10. Januar 2009, 20:05

Hallo

Für meinen Editor möchte ich gerne eine Code Vervollständigung programmieren.

Im prinzip ist mir das auch schon gelungen, nur das es nicht immer funktioniert.

Ich habe es bis jetzt so gemacht:

Wenn man "time." schreibt wird das Modul "time" importiert über "modul = __import__(string)"
Dann wird eine liste mit den Keywörten erstellt "dir(modul)" und das modul wird wieder gelöscht "del(modul)"
Dann lasse ich sie anzeigen, das ist bei WX das kleinste Problem, deswegen schreibe ich auch hierein, weil es nichts mit wx zu tun hat(außer wx hat da was nettes fertigen und ich kenne es nicht, so wie bei PyCrust)

Das geht ja nach einem einfachen "t = time" nicht mehr.

Hat da jemand ne idee?

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 10. Januar 2009, 21:06

Andyh hat geschrieben:Dann wird eine liste mit den Keywörten erstellt "dir(modul)" und das modul wird wieder gelöscht "del(modul)"
Das löscht das Modul nicht sondern nur die Referenz. Außerdem ist ``del`` ein Keyword und keine Funktion.
Andyh hat geschrieben:Das geht ja nach einem einfachen "t = time" nicht mehr.
Dazu braucht dein Editor semantisches Verständnis für den Code. Eclipse macht es etwa so, dass sie einen eigenen Java-Compiler geschrieben haben, der den Code neu kompiliert. Du kannst dir aber auch anschauen, wie PySmell das macht.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Samstag 10. Januar 2009, 21:33

hallo

Danke Leonidas!

Bei "del" ist mir nur ein schreibfehler unterlaufen, kann ja mal passieren im eifer des gefechtes :P .

Das sind ja mal keine guten neuigkeiten. Das heißt ja ich soll einen wenn auch ganzzzzzz simplen python interpret schreiben.

Hat jemand ein Beispiel? währe vieleicht hilfreich.

Bei der Pyshell von wx schauhe ich nochmal nach, aber ich mache mir da keine großen hoffnungen, da ja die shell den code ausführt und ja dann mir schon einen schritt voraus ist.

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Samstag 10. Januar 2009, 22:34

Benutz halt einfach PySmell, das klappt ganz okay.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Samstag 10. Januar 2009, 22:38

hallo

Danke auch dir audax!

Der begriff PySmell ist jetzt schon zwei mal gefallen also muss es ja was sein 8) . Schauhe es mir aber erst morgen an.

Gruß
andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Sonntag 11. Januar 2009, 10:15

Hallo

Also nach den ersten Bilcken muss ich sagen:

Ich blicke es nicht! pysmell ist ja mal brutal wenig dokumentiert, oder ich habe es noch nicht gefunden.

Weis jemand von euch wie es geht?

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Sonntag 11. Januar 2009, 10:19

Falls du's selbst machen willst, vielleicht helfen dir diese theoretischen überlegungen.

Stefan
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Sonntag 11. Januar 2009, 11:29

Andyh hat geschrieben:Hallo

Also nach den ersten Bilcken muss ich sagen:

Ich blicke es nicht! pysmell ist ja mal brutal wenig dokumentiert, oder ich habe es noch nicht gefunden.

Weis jemand von euch wie es geht?

Gruß
Andyh
Schreib einfach den Autor an :D
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Sonntag 11. Januar 2009, 11:57

Hallo

Danke Stefan für den link!

@audax

Danke, im eifer des gefechtes habe ich mal wieder das offensichtlichste übersehen.

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Antworten