##// END OF EJS Templates
band-aid for completion...
band-aid for completion Unlike @Carreau's attempt at using proper CodeMirror completion, this is just a band-aid to get the existing completion back to working for 2.0. This adds a keypress handler on the completer, which then calls insert with the charCode of the key press event, replacing the final `elif` branch of the keydown handler. This cannot be done with keydown, since keydown doesn't know what character is incoming, only the hardware key that is struck.

File last commit:

r11009:e16cf2f8
r15322:c07938f3
Show More
inprocess.py
40 lines | 1.3 KiB | text/x-python | PythonLexer
""" Defines an in-process KernelManager with signals and slots.
"""
# Local imports.
from IPython.kernel.inprocess import (
InProcessShellChannel, InProcessIOPubChannel, InProcessStdInChannel,
InProcessHBChannel, InProcessKernelClient, InProcessKernelManager,
)
from IPython.utils.traitlets import Type
from .kernel_mixins import (
QtShellChannelMixin, QtIOPubChannelMixin,
QtStdInChannelMixin, QtHBChannelMixin, QtKernelClientMixin,
QtKernelManagerMixin,
)
class QtInProcessShellChannel(QtShellChannelMixin, InProcessShellChannel):
pass
class QtInProcessIOPubChannel(QtIOPubChannelMixin, InProcessIOPubChannel):
pass
class QtInProcessStdInChannel(QtStdInChannelMixin, InProcessStdInChannel):
pass
class QtInProcessHBChannel(QtHBChannelMixin, InProcessHBChannel):
pass
class QtInProcessKernelClient(QtKernelClientMixin, InProcessKernelClient):
""" An in-process KernelManager with signals and slots.
"""
iopub_channel_class = Type(QtInProcessIOPubChannel)
shell_channel_class = Type(QtInProcessShellChannel)
stdin_channel_class = Type(QtInProcessStdInChannel)
hb_channel_class = Type(QtInProcessHBChannel)
class QtInProcessKernelManager(QtKernelManagerMixin, InProcessKernelManager):
client_class = __module__ + '.QtInProcessKernelClient'