##// END OF EJS Templates
IPython/Extensions/ipipe.py: xrepr(), xiter() and xattrs() are now...
IPython/Extensions/ipipe.py: xrepr(), xiter() and xattrs() are now generic functions (using Philip J. Eby's simplegeneric package). This makes it possible to customize the display of third-party classes without having to monkeypatch them. xiter() no longer supports a mode argument and the XMode class has been removed. The same functionality can be implemented via IterAttributeDescriptor and IterMethodDescriptor. One consequence of the switch to generic functions is that xrepr() and xattrs() implementation must define the default value for the mode argument themselves and xattrs() implementations must return real descriptors. IPython/external: This new subpackage will contain all third-party packages that are bundled with IPython. (The first one is simplegeneric). IPython/Extensions/ipipe.py (ifile/ils): Readd output of the parent directory which as been dropped in r1703. IPython/Extensions/ipipe.py (iless): Fixed. IPython/Extensions/ibrowse: Fixed sorting under Python 2.3. More docstrings. Moved xrepr(), xiter() and xattrs() documentation into the docstring of the default implementation.

File last commit:

r307:33323225
r415:4a5dcb15
Show More
rlineimpl.py
54 lines | 1.8 KiB | text/x-python | PythonLexer
# -*- coding: utf-8 -*-
""" Imports and provides the "correct" version of readline for the platform.
Readline is used throughout IPython as "import IPython.rlineimpl as readline.
In addition to normal readline stuff, this module provides have_readline boolean
and _outputfile variable used in genutils.
$Id: Magic.py 1096 2006-01-28 20:08:02Z vivainio $"""
import sys
have_readline = False
if sys.platform == 'win32':
try:
import pyreadline.rlmain
#add config for inputrcpath here:
#pyreadline.rlmain.config_path="c:/python/test_config.ini"
from readline import *
#print "Using the new pyreadline (thanks for participating in the testing!)"
have_readline = True
import readline as _rl
except ImportError:
#print "IPython team recommends the new pyreadline for Windows use, "
#print "It's superior especially with non-US keyboard layouts."
#print "Try installing it with 'easy_install pyreadline (ctypes is required) or"
#print "svn co http://ipython.scipy.org/svn/ipython/pyreadline/trunk pyreadline"
#print "Trying 'old' windows readline."
#print "Using 'old' readline, you might want to try pyreadline:"
#print "http://projects.scipy.org/ipython/ipython/wiki/PyReadline/Intro"
try:
from readline import *
import readline as _rl
have_readline = True
except ImportError:
pass
if have_readline:
try:
_outputfile=_rl.GetOutputFile()
except NameError:
print "Failed GetOutputFile"
have_readline = False
else:
try:
from readline import *
have_readline = True
except ImportError:
pass