##// END OF EJS Templates
Merge pull request #1020 from takluyver/dollar-formatter...
Merge pull request #1020 from takluyver/dollar-formatter Dollar formatter for ! shell calls. This uses a subclass of `FullEvalFormatter` for filling in variables in shell commands like `!echo $spam`, instead of Itpl. I've retained the `{foo}` style standard formatting for complex expressions, so it can be picked up by the more powerful built in parser. `$foo` works for names and attribute access. FullEvalFormatter now always outputs unicode, even if you gave it a bytes string. This avoids problems when you mix 8-bit non-ascii strings and unicode (which e.g. `StringIO.StringIO` suffers from). Closes #822 (test was added in 31ab23f).

File last commit:

r4872:34c10438
r5358:09c9952f merge
Show More
generics.py
49 lines | 1.4 KiB | text/x-python | PythonLexer
# encoding: utf-8
"""Generic functions for extending IPython.
See http://cheeseshop.python.org/pypi/simplegeneric.
"""
#-----------------------------------------------------------------------------
# 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
from IPython.external.simplegeneric import generic
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
@generic
def inspect_object(obj):
"""Called when you do obj?"""
raise TryNext
@generic
def complete_object(obj, prev_completions):
"""Custom completer dispatching for python objects.
Parameters
----------
obj : object
The object to complete.
prev_completions : list
List of attributes discovered so far.
This should return the list of attributes in obj. If you only wish to
add to the attributes already discovered normally, return
own_attrs + prev_completions.
"""
raise TryNext