##// END OF EJS Templates
Settle on cleaner API for magic registration....
Settle on cleaner API for magic registration. The official API will be: - ip.register_magics(*args): for registering one or more classes or instances that subclass the main magic.Magics class. This will be the *only* method for registering magics that have a signature f(self, line,...). - ip.function_as_magic: for registering one-off magics made from a standalone function with the signatures f(line), f(line, cell) or f(line, cell=None). We will support, for backwards compatibility, the old ip.define_magic, but it will print a deprecation warning.

File last commit:

r4562:afb86869
r6936:9c7626b3
Show More
ipython.py
23 lines | 813 B | text/x-python | PythonLexer
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""IPython -- An enhanced Interactive Python
The actual ipython script to be installed with 'python setup.py install' is
in './scripts' directory. This file is here (ipython source root directory)
to facilitate non-root 'zero-installation' (just copy the source tree
somewhere and run ipython.py) and development. """
if __name__ != "__main__":
raise RuntimeError('You are trying to import the ipython.py executable. '
'Did you mean to call "import IPython" (case-sensitive) instead?')
# Ensure that the imported IPython is the local one, not a system-wide one
import os, sys
this_dir = os.path.dirname(sys.argv[0])
sys.path.insert(0, this_dir)
# Now proceed with execution
execfile(os.path.join(
this_dir, 'IPython', 'scripts', 'ipython'
))