##// END OF EJS Templates
allow keyboard interrupt to break out of ipdb...
allow keyboard interrupt to break out of ipdb @takluyver @minrk and I discussed this issue in person. It's currently problematic that there is no way, short of restarting a kernel, to get out of an ipdb session if you've deleted the output of the cell in the notebook which started it (by e.g. re-executing that cell). This patch makes Ctrl-C behave the same as Ctrl-D inside of ipdb - it exits the ipdb session. This also makes it possible to stop ipdb sessions from another client. I polled @katyhuff, @scopatz, and some other pyne/pyne hackers and they were surprised to hear that this was not the behavior already.

File last commit:

r11152:98c51e5a
r16455:bb8a2804
Show More
error.py
53 lines | 1.5 KiB | text/x-python | PythonLexer
# encoding: utf-8
"""
Global exception classes for IPython.core.
Authors:
* Brian Granger
* Fernando Perez
* Min Ragan-Kelley
Notes
-----
"""
#-----------------------------------------------------------------------------
# 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
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Exception classes
#-----------------------------------------------------------------------------
class IPythonCoreError(Exception):
pass
class TryNext(IPythonCoreError):
"""Try next hook exception.
Raise this in your hook function to indicate that the next hook handler
should be used to handle the operation.
"""
class UsageError(IPythonCoreError):
"""Error in magic function arguments, etc.
Something that probably won't warrant a full traceback, but should
nevertheless interrupt a macro / batch file.
"""
class StdinNotImplementedError(IPythonCoreError, NotImplementedError):
"""raw_input was requested in a context where it is not supported
For use in IPython kernels, where only some frontends may support
stdin requests.
"""