|
RemoteEngines
Remote Interpreter and DebuggerIn addition to using the internal integrated Python engine, PyScripter offers you the option to use one of three remote Python engines. These remote engines run in a separate process, so, when using them, script errors should not affect the stability of PyScripter. You can select the python engine that will be active from the Python Engine submenu of the Run menu. Here is a brief explanation of the Python engine options: Python Engines:InternalThis the default engine of PyScripter. It is faster than the other options however if there are problems with the scripts you are running or debugging they could affect the reliability of PyScripter and could cause crashes. Another limitation of this engine is that it cannot run or debug GUI scripts nor it can be reinitialized. RemoteThis is the standard remote Python engine and is the recommended engine for most Python development tasks. It runs in a child process and communicates with PyScripter using Rpyc. It can be used to run and debug any kind of script including GUI scripts. However if you run or debug GUI scripts you may have to reinitialize the engine after each run. Remote TkThis remote Python engine is specifically created to run and debug Tkinter applications including pylab using the Tkagg backend. It also supports running pylab in interactive mode. The engine activates a Tkinter mainloop and replaces the mainloop with a dummy function so that the Tkinter scripts you are running or debugging do not block the engine. You may even develop and test Tkinter widgets using the interactive console. Remote WxThis remote Python engine is specifically created to run and debug wxPython applications including pylab using the WX and WXAgg backends. It also supports running pylab in interactive mode. The engine activates a wx MainLoop and replaces the MainLoop with a dummy function so that the wxPython scripts you are running or debugging do not block the engine. You may even develop and test wxPython Frames and Apps using the interactive console. Please note that this engine prevents the redirection of wxPython output since that would prevent the communication with Pyscripter. When using the Tk and Wx remote engines you can of course run or debug any other non-GUI Python script. However bear in mind that these engines may be slightly slower than the standard remote engine since they also contain a GUI main loop. Debugging Wx and Tkinter scirpts using the remote Wx and Tk enginesAs mentioned above the Wx and Tk engines activate a main loop and replace the MainLoop with a dummy function. Therefore, when debugging Gui scripts using these engines, as soon as you reach the MainLoop statement debugging ends and you can then test the running application but without further debugging support. This means two things:
To debug event code of Wx and Tkinter scripts use the standard remote engine. You may wonder why should you ever use the Wx and Tk specific remote engines. Here is a few reasons:
Requirements for the Remote EnginesThe remote engines require the installation of Rpyc version 2.6, which by the way is just brilliant. Update: PyScripter does not work yet with the latest version of Rpyc 3.x. You can download version 2.6 from the Downloads section. Troubleshooting
|
Sign in to add a comment
Thank you all for the marvelous job you've done!