Gibt es eine SLIME-like Remote-Python-Console?

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Sonntag 14. Dezember 2008, 11:12

Gibt es für Python etwas ähnliches es wie der Emacs mit SLIME für CommonLisp nutzt? Dort lässt man im Hintergrund ein Lisp-System laufen, in dem ein spezieller Swank genannter Server läuft. Dieser Server kann Anfragen des Editors beantworten, damit der Editor auf diese Weise einen interaktiven Modus simulieren kann.

Ich habe gerade mal ausprobiert, wie ich eine Art Python Console in einem TextMate-Fenster realisieren kann, doch dazu starte ich bei jedem RETURN einen neuen Python-Prozess.

Nun könnte ich mir, vielleicht basierend auf XMLRPC, selbst so einen Server bauen, dem ich Textschnipsel schicken kann, die dieser dann ausführt, dabei sys.stdout abfängt und das wieder zurückschickt. Doch sollte das Programm eine weitere Eingabe benötigen, wird es schnell recht aufwendig und vielleicht hat ja jemand schon eine Art Remote-Console für Python gebaut, die jemand von euch kennt.

Stefan
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 14. Dezember 2008, 12:48

SLIMES RPC-Protokoll macht bischen mehr als nur Strings umher schicken, siehe das Bild im Blog hier (ist aus den Folien des Vortrages in der Münchner Lisp-Group. Dadurch sind einige Dinge direkt in Elisp realisierbar und sind so wesentlich schneller als wenn man alles in Swank verlagern würde. Wenn man sowas in Python so nachbauen würde, würde man vim mit +python nehmen oder emacs mit pymacs und dort via PyRO oder ähnlichem auf einen Backend-Prozess zugreifen.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Sonntag 14. Dezember 2008, 16:30

Interessanter Vortrag. Danke.

Was ich wollte, war dann doch recht einfach und ich hatte das noch schnell vor dem Mittagessen zusammengehackt: http://gist.github.com/35667

Ein bisschen umgeschrieben funktioniert das jetzt bei mir auch in einem TextMate-Fenster und liese sich jetzt noch weiter ausbauen. Ich könnte mir z.B. die Historie merken und in ihr blättern oder sie abspeichern. Leider lässt sich TextMate nicht so gut programmieren - IMHO - ich kann AFAIK nicht einfach den Cursor programmgesteuert irgendwo hinbewegen.

Stefan
Antworten