Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running a script from editor does not send runfile() correctly to IPython Qt plugin #1032

Closed
spyder-bot opened this issue Feb 17, 2015 · 9 comments

Comments

@spyder-bot
Copy link
Collaborator

From DavidAnt...@gmail.com on 2012-05-17T20:59:20Z

Steps:

  1. Open a new Ipython kernel with Ipython 0.12.
  2. Run a python script from the editor, with the option "Execute in Current Python or IPython interpreter"

Result:

The runfile(...) command gets added to the Ipython kernel windows, instead of the IPython qt widget, so the script does not get executed.

I appreciate that the Ipython plugin is still pretty new and issues like this are to be expected, but I'm really excited about it! I guess fixing this will make it easier to use and allow keen users to start finding all the bugs to be ironed out.

Original issue: http://code.google.com/p/spyderlib/issues/detail?id=1032

@spyder-bot
Copy link
Collaborator Author

From jed.lud...@gmail.com on 2012-05-17T22:42:29Z

Integration with IPython 0.12 may never get back to the level it was at for 0.10. See the complexities described in issue #743 and this blog post: http://spyder-ide.blogspot.com/2011/09/no-ipython-v011-support-in-spyders.html

@spyder-bot
Copy link
Collaborator Author

From ccordoba12 on 2012-05-18T06:10:00Z

Jed, on the blogpost and the Issue you mentioned, Pierre meant that integration with IPython's console (not qtconsole) will never be improved. Eventually I'd say we'll drop it.

But we surely can improve our support for qtconsole (which is what David is asking for). I'm precisely planning to do that during the summer.

We really need to support it at the same level of the 0.10 console because plotting is basically broken on Linux (and probably OS X). I mean, it works on the Python console but it blocks it so it's kind of useless...

Owner: ccordoba12
Labels: -Priority-Low Priority-Medium MS-v2.2

@spyder-bot
Copy link
Collaborator Author

From DavidAnt...@gmail.com on 2012-05-19T23:34:11Z

@-Carlos: Yes, this is correct. It would seem like a pretty straightforward issue to fix - the run command just needs to get sent to the correct window.

By the way, on linux (at least on Unbuntu 12.04), matplotlib plots seem to work with both the Ipython and regular python consoles. The Ipython console blocks when plotting, but the regular console seems to handle the background threads properly. It just lacks all the other niceties of Ipython.

@spyder-bot
Copy link
Collaborator Author

From pierre.raybaut on 2012-05-23T06:47:48Z

@-Carlos: I was not aware of the fact that the standard Python interpreter was blocking Matplotlib plots on Linux and MacOS. Everything is there to avoid this blocking issue: the inputhook is installed like on Windows... and generally it is far more difficult to make it work on Windows than on Linux/MacOS so I'm quite surprised. As David seems to disagree, do you really confirm that Matplotlib plots are blocked using the standard Python interpreter with advanced options enabled (default)?

Even better, Spyder has the exclusive feature of non-blocking Qt GUIs using PySide (the inputhook is not implemented in PySide like it is in PyQt).

@spyder-bot
Copy link
Collaborator Author

From pierre.raybaut on 2012-05-23T07:08:34Z

@-David: a quick look to the IPython widget API makes me think that it should be quite easy to implement. Actually, one simply has to use the 'execute' method to send any command to the IPython shell.
So, from Spyder's main window, that is calling the 'obj.ipython_widget.execute' method where obj is one of the ipython frontend in 'self.ipython_frontends'.

I'll take a look at it if you like.

@spyder-bot
Copy link
Collaborator Author

From jed.lud...@gmail.com on 2012-05-23T07:17:24Z

I can confirm that Matplotlib plots are NOT blocking in the standard Python interpreter on Ubuntu 11.10. This is true for the tip of both the v21 repo and the default repo.

@spyder-bot
Copy link
Collaborator Author

From pierre.raybaut on 2012-05-23T13:46:40Z

This issue was closed by revision ca8484a1eafe .

Status: Fixed

@spyder-bot
Copy link
Collaborator Author

From DavidAnt...@gmail.com on 2012-05-23T16:17:43Z

Pierre: Thanks, that works exactly as expected. Unfortunately I am now prevent from fully utilising this qtconsole by Issue #1044 . But this is definitely good progress and much appreciated!

Status: Verified

@spyder-bot
Copy link
Collaborator Author

From ccordoba12 on 2013-04-06T20:23:58Z

Labels: Cat-Editor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant