##// END OF EJS Templates
Merging upstream changes from inputhook and config-refactor....
Merging upstream changes from inputhook and config-refactor. Some minor changes needed to be made to make sure component queries in ipapi worked properly.

File last commit:

r2224:11a6689b merge
r2224:11a6689b merge
Show More
ipapi.py
59 lines | 1.8 KiB | text/x-python | PythonLexer
#!/usr/bin/env python
# encoding: utf-8
"""
Oh my @#*%, where did ipapi go?
Originally, this module was designed to be a public api for IPython. It is
now deprecated and replaced by :class:`IPython.core.Interactive` shell.
Almost all of the methods that were here are now there, but possibly renamed.
During our transition, we will keep this simple module with its :func:`get`
function. It too will eventually go away when the new component querying
interface is fully used.
Authors:
* Brian Granger
"""
#-----------------------------------------------------------------------------
# Copyright (C) 2008-2009 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 IPython.core.error import TryNext, UsageError
from IPython.core.component import Component
from IPython.core.iplib import InteractiveShell
#-----------------------------------------------------------------------------
# Classes and functions
#-----------------------------------------------------------------------------
def get():
"""Get the most recently created InteractiveShell instance."""
insts = InteractiveShell.get_instances()
most_recent = insts[0]
for inst in insts[1:]:
if inst.created > most_recent.created:
most_recent = inst
return most_recent
def launch_new_instance():
"""Create a run a full blown IPython instance"""
from IPython.core.ipapp import IPythonApp
app = IPythonApp()
app.start()