##// END OF EJS Templates
Backport PR #5458: Add support for PyQt5....
Backport PR #5458: Add support for PyQt5. This PR adds the new `QT_API_PYQT5` to `IPython/external/qt_loaders.py ` and allows to embed the IPython console in Qt5 Applications. In case of PyQt5, the loader returns a union of `PyQt5.QtGui` and `PyQt5.QtWidgets` acting as a Qt4-QtGui compatibility module. One small fix to `InProcessChannel.__init__` was necessary though. For some reason, when constructing `QtInProcessShellChannel`, the `QtCore.QObject.__init__` initializer from `SuperQObject` indirectly calls the `InProcessChannel.__init__` function, which doesn't have a default constructor and thus fails. I assume this has something to do with the metaclass/multiple inheritance approach IPython uses on QObject. Adding a default value for `client` in `InProcessChannel.__init__` solved the problem for me.

File last commit:

r1334:049617d6
r18784:3b30bb89
Show More
test_exampleip.txt
30 lines | 816 B | text/plain | TextLexer
=================================
Tests in example form - IPython
=================================
You can write text files with examples that use IPython prompts (as long as you
use the nose ipython doctest plugin), but you can not mix and match prompt
styles in a single file. That is, you either use all ``>>>`` prompts or all
IPython-style prompts. Your test suite *can* have both types, you just need to
put each type of example in a separate. Using IPython prompts, you can paste
directly from your session::
In [5]: s="Hello World"
In [6]: s.upper()
Out[6]: 'HELLO WORLD'
Another example::
In [8]: 1+3
Out[8]: 4
Just like in IPython docstrings, you can use all IPython syntax and features::
In [9]: !echo "hello"
hello
In [10]: a='hi'
In [11]: !echo $a
hi