MasterOfGizmo hat geschrieben:Was wäre denn ein brauchbarer Weg, das ganze zu starten und zu stoppen? Eine App zum Ein- und Ausschalten und ein Plugin, um anzuzeigen, dass IPython läuft (und Resourcen verbraucht)? Eine App, die man jeweils zum Starten und Stopnne urz öffnet? Oder eine, die die ganze Zeit offen ist und IPython beendet sobald man die App schließt? Fällt Dir ein schöneres Konzept ein?
Vom Konzept her passt es denke ich am besten, wenn die "IDE" (bzw. der "jupyter notebook"-Prozess) durch den Zugriff auf die Einstiegs-URL im Webinterface getriggert wird, dann im Hintergrund läuft, und sich automatisch beendet wenn er nicht mehr benutzt wird. Probleme dabei:
- "jupyter notebook" braucht ziemlich lang zum starten (beim Testen hier über 10 Sekunden). Das muss man in der Weboberfläche irgendwie sinnvoll überbrücken.
- Bei einer Web-Applikation ist es etwas knifflig herauszufinden, wann sie nicht mehr gebraucht wird und abgeschaltet werden kann. Insbesondere wenn man sich da wegen Punkt 1) eigentlich nicht erlauben darf, versehentlich zu früh abzuschalten.
Wie ich das genau mache weiß ich noch nicht, aber auf irgendwas in der Art wird es wohl rauslaufen.
MasterOfGizmo hat geschrieben:
Ich nehme an, dass man aus IPython in irgendeiner Form auf den TXT-Bildschirm zugreifen will. Soll das wie bei einer normalen App passieren? Also indem das Notebook eine komplett echte QT-GUI enthält?
Im Prinzip schon, denke ich. Vom Konzept her entspricht ein Notebook einer TXT-App, und eine aktive TXT-App macht beim Start ein Fenster auf und hat über PyQT Zugriff auf den TXT-Bildschirm. Das Notebook muss den Zugriff nicht aktiv nutzen, aber ich denke jedes aktive Notebook sollte mindestens ein (gegebenenfalls leeres) Applikations-Fenster aufmachen - allein um anzuzeigen, dass da jetzt gerade eine "App" läuft.
Wie man das genau hinbekommt weiß ich allerdings noch nicht. Da muss ich mir erstmal etwas detaillierter anschauen, wie die einzelnen Teile des Jupyter/IPython-Systems zusammenspielen und wo man sich da am besten einklinken kann.
MasterOfGizmo hat geschrieben:
Man kann m.E. aus einem IPython-Notebook auch den reinen Python-Code exportieren. Das könnte dann auf dem TXT auch als ganz normale Stanbd-Alone-App laufen. Im Prinzip genau wie bei Blockly.
Ja, und das ist auch der Plan. Probleme (bzw. offene Fragen) hierbei:
- Was passiert mit den Ausgaben, die normalerweise per Webinterface im Notebook landen? Einfach wegschmeissen?
- Welche "Zellen" des Notebooks sollen ausgeführt werden, wenn eine "Notebook-App" standalone (d.h. ohne Kontakt zum Browser) läuft? Sinnvollerweise vermutlich alle (d.h. ein Start über den Launcher ist dann äquivalent zu "Cell->Run All" im Notebook-Webinterface).
Eventuell kann Torsten da ja was zu sagen, der hat hier denke ich die meiste Erfahrung mit Jupyter und IPython.
MasterOfGizmo hat geschrieben:Wenn Du mir sagst, was Du da gerne als GUI hättest, dann kann ich was passendes bauen.
Danke, aber viel GUI wird es da denke ich eher nicht geben - im Wesentlichen das leere "Standard-Fenster", und eventuell ein paar Convenience-Funktionen, mit denen man aus dem Notebook heraus einfach Zugriff darauf bekommt. Das kriege ich vermutlich auch selber hin