##// END OF EJS Templates
Merge pull request #3203 from takluyver/cell-magics-wholecell...
Merge pull request #3203 from takluyver/cell-magics-wholecell Separate InputSplitter for transforming whole cells This allows cell magics to include blank lines once again (closes #3178). InteractiveShell now has two input splitters: - `input_splitter` is used to determine when a block of input is complete, so you can use a cell magic in the terminal by leaving a blank line at the end. - `input_transformer_manager` is used to transform whole cells, so cell magics affect the whole of their cell. I removed the similar concept of 'input modes' for InputSplitter, because it was bound to get conflated, and it made the code rather hard to follow.

File last commit:

r9372:37f32253
r10256:410df964 merge
Show More
log.py
23 lines | 687 B | text/x-python | PythonLexer
import logging
from logging import INFO, DEBUG, WARN, ERROR, FATAL
import zmq
from zmq.log.handlers import PUBHandler
class EnginePUBHandler(PUBHandler):
"""A simple PUBHandler subclass that sets root_topic"""
engine=None
def __init__(self, engine, *args, **kwargs):
PUBHandler.__init__(self,*args, **kwargs)
self.engine = engine
@property
def root_topic(self):
"""this is a property, in case the handler is created
before the engine gets registered with an id"""
if isinstance(getattr(self.engine, 'id', None), int):
return "engine.%i"%self.engine.id
else:
return "engine"