##// END OF EJS Templates
Work to address the review comments on Fernando's branch....
Work to address the review comments on Fernando's branch. * Added comment about Magic(object) (r1224) * Moved InteractiveTB.set_mode from IPythonApp -> InteractiveShell (r1229) * Moved pylabtools.py to IPython/lib (r1229) * Cleaned up comments and copyrights in testing (r1233) * Added comment about ip.shell._ofind (r1237) * Removed "Bye." from quitter (r1240). * Refactored and removed :mod:`IPython.utils.genutils` and :mod:`IPython.utils.platutils`. These modules have been replaced by topical focused modules in :mod:`IPython.utils`. * Refactored tests in :mod:`IPython.utils.tests`. * Moved :func:`IPython.testing.tools.temp_pyfile` to :mod:`IPython.utils.io`. * Moved :func:`IPython.testing.tools.cmd2argv` to :func:`IPython.testing.tools.pycmd2argv` and documented the fact that this only works with Python based command line programs. * Created a new :func:`IPython.utils.path.get_ipython_module_path` to use in finding paths to IPython modules.

File last commit:

r2058:7e8fc59a
r2498:3eae1372
Show More
sync_traceback_trap.py
53 lines | 1.7 KiB | text/x-python | PythonLexer
/ IPython / kernel / core / sync_traceback_trap.py
Gael Varoquaux
Better traceback support.
r1439 # encoding: utf-8
"""Object to manage sys.excepthook().
Synchronous version: prints errors when called.
"""
__docformat__ = "restructuredtext en"
#-------------------------------------------------------------------------------
# Copyright (C) 2008 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Imports
#-------------------------------------------------------------------------------
from traceback_trap import TracebackTrap
Brian Granger
Fixing installation related issues.
r2058 from IPython.core.ultratb import ColorTB
Gael Varoquaux
Better traceback support.
r1439
class SyncTracebackTrap(TracebackTrap):
gvaroquaux
More docstring work.
r1459 """ TracebackTrap that displays immediatly the traceback in addition
to capturing it. Useful in frontends, as without this traceback trap,
some tracebacks never get displayed.
"""
Gael Varoquaux
Better traceback support.
r1439
gvaroquaux
Clean up code, names, and docstrings.
r1455 def __init__(self, sync_formatter=None, formatters=None,
raiseException=True):
gvaroquaux
More docstring work.
r1459 """
sync_formatter: Callable to display the traceback.
formatters: A list of formatters to apply.
"""
Gael Varoquaux
Better traceback support.
r1439 TracebackTrap.__init__(self, formatters=formatters)
if sync_formatter is None:
sync_formatter = ColorTB(color_scheme='LightBG')
self.sync_formatter = sync_formatter
gvaroquaux
Clean up code, names, and docstrings.
r1455 self.raiseException = raiseException
Gael Varoquaux
Better traceback support.
r1439
def hook(self, *args):
""" This method actually implements the hook.
"""
self.args = args
gvaroquaux
Clean up code, names, and docstrings.
r1455 if not self.raiseException:
print self.sync_formatter(*self.args)
else:
raise
Gael Varoquaux
Better traceback support.
r1439