diff --git a/IPython/completer.py b/IPython/completer.py
index 52df78e..b8b5334 100644
--- a/IPython/completer.py
+++ b/IPython/completer.py
@@ -6,7 +6,6 @@ upstream and were accepted as of Python 2.3, but we need a lot more
 functionality specific to IPython, so this module will continue to live as an
 IPython-specific utility.
 
----------------------------------------------------------------------------
 Original rlcompleter documentation:
 
 This requires the latest extension to the readline module (the
diff --git a/IPython/genutils.py b/IPython/genutils.py
index 38f93ef..0606842 100644
--- a/IPython/genutils.py
+++ b/IPython/genutils.py
@@ -1234,11 +1234,11 @@ def esc_quotes(strng):
 def make_quoted_expr(s):
     """Return string s in appropriate quotes, using raw string if possible.
 
-    Effectively this turns string: cd \ao\ao\
-    to: r"cd \ao\ao\_"[:-1]
-
-    Note the use of raw string and padding at the end to allow trailing backslash.
+    XXX - example removed because it caused encoding errors in documentation
+    generation.  We need a new example that doesn't contain invalid chars.
 
+    Note the use of raw string and padding at the end to allow trailing
+    backslash.
     """
 
     tail = ''
diff --git a/IPython/ipapi.py b/IPython/ipapi.py
index 81580cd..860565b 100644
--- a/IPython/ipapi.py
+++ b/IPython/ipapi.py
@@ -24,7 +24,6 @@ That way the module is imported at startup and you can have all your
 personal configuration (as opposed to boilerplate ipythonrc-PROFILENAME 
 stuff) in there. 
 
------------------------------------------------
 import IPython.ipapi
 ip = IPython.ipapi.get()
 
diff --git a/IPython/kernel/core/util.py b/IPython/kernel/core/util.py
index 7465aff..1dceb4a 100644
--- a/IPython/kernel/core/util.py
+++ b/IPython/kernel/core/util.py
@@ -70,8 +70,8 @@ def esc_quotes(strng):
 def make_quoted_expr(s):
     """Return string s in appropriate quotes, using raw string if possible.
     
-    Effectively this turns string: cd \ao\ao\
-    to: r"cd \ao\ao\_"[:-1]
+    XXX - example removed because it caused encoding errors in documentation
+    generation.  We need a new example that doesn't contain invalid chars.
     
     Note the use of raw string and padding at the end to allow trailing
     backslash.
diff --git a/IPython/testing/decorators.py b/IPython/testing/decorators.py
index f706235..99e5066 100644
--- a/IPython/testing/decorators.py
+++ b/IPython/testing/decorators.py
@@ -121,7 +121,7 @@ def skipif(skip_condition, msg=None):
     ''' Make function raise SkipTest exception if skip_condition is true
 
     Parameters
-    ---------
+    ----------
     skip_condition : bool or callable. 
  	Flag to determine whether to skip test.  If the condition is a 
  	callable, it is used at runtime to dynamically make the decision.  This 
diff --git a/IPython/testing/decorators_numpy.py b/IPython/testing/decorators_numpy.py
index 42727f2..e6a56cb 100644
--- a/IPython/testing/decorators_numpy.py
+++ b/IPython/testing/decorators_numpy.py
@@ -50,7 +50,7 @@ def skipif(skip_condition=True, msg=None):
     ''' Make function raise SkipTest exception if skip_condition is true
 
     Parameters
-    ---------
+    ----------
     skip_condition : bool or callable. 
  	Flag to determine whether to skip test.  If the condition is a 
  	callable, it is used at runtime to dynamically make the decision.  This 
diff --git a/docs/Makefile b/docs/Makefile
index 506264b..d7e9363 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -5,13 +5,14 @@
 SPHINXOPTS    =
 SPHINXBUILD   = sphinx-build
 PAPER         =
+SRCDIR        = source
 
 # Internal variables.
 PAPEROPT_a4     = -D latex_paper_size=a4
 PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS   = -d build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
+ALLSPHINXOPTS   = -d build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(SRCDIR)
 
-.PHONY: help clean html web pickle htmlhelp latex changes linkcheck
+.PHONY: help clean html web pickle htmlhelp latex changes linkcheck api
 
 help:
 	@echo "Please use \`make <target>' where <target> is one of"
@@ -28,7 +29,7 @@ help:
 	@echo "dist         all, and then puts the results in dist/"
 
 clean:
-	-rm -rf build/* dist/*
+	-rm -rf build/* dist/* $(SRCDIR)/api/generated
 
 pdf: latex
 	cd build/latex && make all-pdf
@@ -41,12 +42,16 @@ dist: clean all
 	cp -al build/html dist/
 	@echo "Build finished.  Final docs are in dist/"
 
-html:
+html: api
 	mkdir -p build/html build/doctrees
 	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) build/html
 	@echo
 	@echo "Build finished. The HTML pages are in build/html."
 
+api:
+	python autogen_api.py
+	@echo "Build API docs finished."
+
 pickle:
 	mkdir -p build/pickle build/doctrees
 	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) build/pickle
diff --git a/docs/autogen_api.py b/docs/autogen_api.py
new file mode 100755
index 0000000..c7ab055
--- /dev/null
+++ b/docs/autogen_api.py
@@ -0,0 +1,33 @@
+#!/usr/bin/env python
+"""Script to auto-generate our API docs.
+"""
+# stdlib imports
+import os
+import sys
+
+# local imports
+sys.path.append(os.path.abspath('sphinxext'))
+from apigen import ApiDocWriter
+
+#*****************************************************************************
+if __name__ == '__main__':
+    pjoin = os.path.join
+    package = 'IPython'
+    outdir = pjoin('source','api','generated')
+    docwriter = ApiDocWriter(package,rst_extension='.txt')
+    docwriter.package_skip_patterns += [r'\.fixes$',
+                                        r'\.externals$',
+                                        r'\.Extensions',
+                                        r'\.kernel.config',
+                                        r'\.attic',
+                                        ]
+    docwriter.module_skip_patterns += [ r'\.FakeModule',
+                                        r'\.cocoa',
+                                        r'\.ipdoctest',
+                                        r'\.Gnuplot',
+                                        ]
+    docwriter.write_api_docs(outdir)
+    docwriter.write_index(outdir, 'gen',
+                          relative_to = pjoin('source','api')
+                          )
+    print '%d files written' % len(docwriter.written_modules)
diff --git a/docs/source/api/index.txt b/docs/source/api/index.txt
new file mode 100644
index 0000000..d5c55f4
--- /dev/null
+++ b/docs/source/api/index.txt
@@ -0,0 +1,12 @@
+.. _api-index:
+
+###################
+  The IPython API
+###################
+
+.. htmlonly::
+
+   :Release: |version|
+   :Date: |today|
+
+.. include:: generated/gen.txt
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 06e1430..198b195 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -36,9 +36,13 @@ execfile('../../IPython/Release.py',iprelease)
 # Add any Sphinx extension module names here, as strings. They can be extensions
 # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
 extensions = ['sphinx.ext.autodoc',
-              'inheritance_diagram', 'only_directives',
+              'sphinx.ext.doctest',
+              
+              'only_directives',
+              'inheritance_diagram',
               'ipython_console_highlighting', 
               # 'plot_directive', # disabled for now, needs matplotlib
+              'numpydoc',  # to preprocess docstrings
               ]
 
 # Add any paths that contain templates here, relative to this directory.
diff --git a/docs/source/index.txt b/docs/source/index.txt
index bde7c08..5e969a5 100644
--- a/docs/source/index.txt
+++ b/docs/source/index.txt
@@ -17,10 +17,11 @@ IPython Documentation
    interactive/index.txt
    parallel/index.txt
    config/index.txt
-   changes.txt
-   development/index.txt
    faq.txt
    history.txt
+   changes.txt
+   development/index.txt
+   api/index.txt
    license_and_copyright.txt
    credits.txt
 
diff --git a/docs/source/interactive/reference.txt b/docs/source/interactive/reference.txt
index b3a873b..8e045d5 100644
--- a/docs/source/interactive/reference.txt
+++ b/docs/source/interactive/reference.txt
@@ -496,9 +496,9 @@ following example defines a new magic command, %impall::
     ip.expose_magic('impall', doimp)
 
 You can also define your own aliased names for magic functions. In your
-ipythonrc file, placing a line like:
+ipythonrc file, placing a line like::
 
-execute __IP.magic_cl = __IP.magic_clear
+    execute __IP.magic_cl = __IP.magic_clear
 
 will define %cl as a new name for %clear.
 
@@ -508,1572 +508,9 @@ magic functions at any time and their docstrings. You can also type
 information on the '?' system) to get information about any particular
 magic function you are interested in.
 
+The API documentation for the :mod:`IPython.Magic` module contains the full
+docstrings of all currently available magic commands.
 
-Magic commands
---------------
-
-The rest of this section is automatically generated for each release
-from the docstrings in the IPython code. Therefore the formatting is
-somewhat minimal, but this method has the advantage of having
-information always in sync with the code.
-
-A list of all the magic commands available in IPython's default
-installation follows. This is similar to what you'll see by simply
-typing %magic at the prompt, but that will also give you information
-about magic commands you may have added as part of your personal
-customizations.
-
-.. magic_start
-
-**%Exit**::
-
-	Exit IPython without confirmation.
-
-**%Pprint**::
-
-	Toggle pretty printing on/off.
-
-**%alias**::
-
-	Define an alias for a system command.
-
-        '%alias alias_name cmd' defines 'alias_name' as an alias for 'cmd'
-
-        Then, typing 'alias_name params' will execute the system command 'cmd
-        params' (from your underlying operating system).
-
-        Aliases have lower precedence than magic functions and Python normal
-        variables, so if 'foo' is both a Python variable and an alias, the
-        alias can not be executed until 'del foo' removes the Python variable.
-
-        You can use the %l specifier in an alias definition to represent the
-        whole line when the alias is called.  For example:
-
-          In [2]: alias all echo "Input in brackets: <%l>"\
-          In [3]: all hello world\
-          Input in brackets: <hello world>
-
-        You can also define aliases with parameters using %s specifiers (one
-        per parameter):
-        
-          In [1]: alias parts echo first %s second %s\
-          In [2]: %parts A B\
-          first A second B\
-          In [3]: %parts A\
-          Incorrect number of arguments: 2 expected.\
-          parts is an alias to: 'echo first %s second %s'
-
-        Note that %l and %s are mutually exclusive.  You can only use one or
-        the other in your aliases.
-
-        Aliases expand Python variables just like system calls using ! or !! 
-        do: all expressions prefixed with '$' get expanded.  For details of
-        the semantic rules, see PEP-215:
-        http://www.python.org/peps/pep-0215.html.  This is the library used by
-        IPython for variable expansion.  If you want to access a true shell
-        variable, an extra $ is necessary to prevent its expansion by IPython:
-
-        In [6]: alias show echo\
-        In [7]: PATH='A Python string'\
-        In [8]: show $PATH\
-        A Python string\
-        In [9]: show $$PATH\
-        /usr/local/lf9560/bin:/usr/local/intel/compiler70/ia32/bin:...
-
-        You can use the alias facility to acess all of $PATH.  See the %rehash
-        and %rehashx functions, which automatically create aliases for the
-        contents of your $PATH.
-
-        If called with no parameters, %alias prints the current alias table.
-
-**%autocall**::
-
-	Make functions callable without having to type parentheses.
-
-        Usage:
-
-           %autocall [mode]
-
-        The mode can be one of: 0->Off, 1->Smart, 2->Full.  If not given, the
-        value is toggled on and off (remembering the previous state).
-
-        In more detail, these values mean:
-
-        0 -> fully disabled
-
-        1 -> active, but do not apply if there are no arguments on the line.
-
-        In this mode, you get:
-
-        In [1]: callable
-        Out[1]: <built-in function callable>
-
-        In [2]: callable 'hello'
-        ------> callable('hello')
-        Out[2]: False
-
-        2 -> Active always.  Even if no arguments are present, the callable
-        object is called:
-
-        In [4]: callable
-        ------> callable()
-
-        Note that even with autocall off, you can still use '/' at the start of
-        a line to treat the first argument on the command line as a function
-        and add parentheses to it:
-
-        In [8]: /str 43
-        ------> str(43)
-        Out[8]: '43'
-
-**%autoindent**::
-
-	Toggle autoindent on/off (if available).
-
-**%automagic**::
-
-	Make magic functions callable without having to type the initial %.
-
-        Without argumentsl toggles on/off (when off, you must call it as
-        %automagic, of course).  With arguments it sets the value, and you can
-        use any of (case insensitive):
-
-         - on,1,True: to activate
-
-         - off,0,False: to deactivate.
-
-        Note that magic functions have lowest priority, so if there's a
-        variable whose name collides with that of a magic fn, automagic won't
-        work for that function (you get the variable instead). However, if you
-        delete the variable (del var), the previously shadowed magic function
-        becomes visible to automagic again.
-
-**%bg**::
-
-	Run a job in the background, in a separate thread.
-
-        For example,
-
-          %bg myfunc(x,y,z=1)
-
-        will execute 'myfunc(x,y,z=1)' in a background thread.  As soon as the
-        execution starts, a message will be printed indicating the job
-        number.  If your job number is 5, you can use
-
-          myvar = jobs.result(5)  or  myvar = jobs[5].result
-
-        to assign this result to variable 'myvar'.
-
-        IPython has a job manager, accessible via the 'jobs' object.  You can
-        type jobs? to get more information about it, and use jobs.<TAB> to see
-        its attributes.  All attributes not starting with an underscore are
-        meant for public use.
-
-        In particular, look at the jobs.new() method, which is used to create
-        new jobs.  This magic %bg function is just a convenience wrapper
-        around jobs.new(), for expression-based jobs.  If you want to create a
-        new job with an explicit function object and arguments, you must call
-        jobs.new() directly.
-
-        The jobs.new docstring also describes in detail several important
-        caveats associated with a thread-based model for background job
-        execution.  Type jobs.new? for details.
-
-        You can check the status of all jobs with jobs.status().
-
-        The jobs variable is set by IPython into the Python builtin namespace.
-        If you ever declare a variable named 'jobs', you will shadow this
-        name.  You can either delete your global jobs variable to regain
-        access to the job manager, or make a new name and assign it manually
-        to the manager (stored in IPython's namespace).  For example, to
-        assign the job manager to the Jobs name, use:
-
-          Jobs = __builtins__.jobs
-
-**%bookmark**::
-
-	Manage IPython's bookmark system.
-
-        %bookmark <name>       - set bookmark to current dir
-        %bookmark <name> <dir> - set bookmark to <dir>
-        %bookmark -l           - list all bookmarks
-        %bookmark -d <name>    - remove bookmark
-        %bookmark -r           - remove all bookmarks
-
-        You can later on access a bookmarked folder with:
-          %cd -b <name>
-        or simply '%cd <name>' if there is no directory called <name> AND
-        there is such a bookmark defined.
-
-        Your bookmarks persist through IPython sessions, but they are
-        associated with each profile.
-
-**%cd**::
-
-	Change the current working directory.
-
-        This command automatically maintains an internal list of directories
-        you visit during your IPython session, in the variable _dh. The
-        command %dhist shows this history nicely formatted. You can also
-        do 'cd -<tab>' to see directory history conveniently.
-
-        Usage:
-
-          cd 'dir': changes to directory 'dir'.
-
-          cd -: changes to the last visited directory.
-
-          cd -<n>: changes to the n-th directory in the directory history.
-
-          cd -b <bookmark_name>: jump to a bookmark set by %bookmark
-             (note: cd <bookmark_name> is enough if there is no
-              directory <bookmark_name>, but a bookmark with the name exists.)
-              'cd -b <tab>' allows you to tab-complete bookmark names. 
-
-        Options:
-
-        -q: quiet.  Do not print the working directory after the cd command is
-        executed.  By default IPython's cd command does print this directory,
-        since the default prompts do not display path information.
-        
-        Note that !cd doesn't work for this purpose because the shell where
-        !command runs is immediately discarded after executing 'command'.
-
-**%clear**::
-
-	 Clear various data (e.g. stored history data)
-    
-    %clear out - clear output history
-    %clear in  - clear input history
-    %clear shadow_compress - Compresses shadow history (to speed up ipython)
-    %clear shadow_nuke - permanently erase all entries in shadow history
-    %clear dhist - clear dir history
-
-**%color_info**::
-
-	Toggle color_info.
-
-        The color_info configuration parameter controls whether colors are
-        used for displaying object details (by things like %psource, %pfile or
-        the '?' system). This function toggles this value with each call.
-
-        Note that unless you have a fairly recent pager (less works better
-        than more) in your system, using colored object information displays
-        will not work properly. Test it and see.
-
-**%colors**::
-
-	Switch color scheme for prompts, info system and exception handlers.
-
-        Currently implemented schemes: NoColor, Linux, LightBG.
-
-        Color scheme names are not case-sensitive.
-
-**%cpaste**::
-
-	Allows you to paste & execute a pre-formatted code block from clipboard
-        
-        You must terminate the block with '--' (two minus-signs) alone on the
-        line. You can also provide your own sentinel with '%paste -s %%' ('%%' 
-        is the new sentinel for this operation)
-        
-        The block is dedented prior to execution to enable execution of method
-        definitions. '>' and '+' characters at the beginning of a line are
-        ignored, to allow pasting directly from e-mails or diff files. The
-        executed block is also assigned to variable named 'pasted_block' for
-        later editing with '%edit pasted_block'.
-        
-        You can also pass a variable name as an argument, e.g. '%cpaste foo'.
-        This assigns the pasted block to variable 'foo' as string, without 
-        dedenting or executing it.
-        
-        Do not be alarmed by garbled output on Windows (it's a readline bug). 
-        Just press enter and type -- (and press enter again) and the block 
-        will be what was just pasted.
-        
-        IPython statements (magics, shell escapes) are not supported (yet).
-
-**%debug**::
-
-	Activate the interactive debugger in post-mortem mode.
-
-        If an exception has just occurred, this lets you inspect its stack
-        frames interactively.  Note that this will always work only on the last
-        traceback that occurred, so you must call this quickly after an
-        exception that you wish to inspect has fired, because if another one
-        occurs, it clobbers the previous one.
-
-        If you want IPython to automatically do this on every exception, see
-        the %pdb magic for more details.
-
-**%dhist**::
-
-	Print your history of visited directories.
-
-        %dhist       -> print full history\
-        %dhist n     -> print last n entries only\
-        %dhist n1 n2 -> print entries between n1 and n2 (n1 not included)\
-
-        This history is automatically maintained by the %cd command, and
-        always available as the global list variable _dh. You can use %cd -<n>
-        to go to directory number <n>.
-        
-        Note that most of time, you should view directory history by entering
-        cd -<TAB>.
-
-**%dirs**::
-
-	Return the current directory stack.
-
-**%doctest_mode**::
-
-	Toggle doctest mode on and off.
-
-        This mode allows you to toggle the prompt behavior between normal
-        IPython prompts and ones that are as similar to the default IPython
-        interpreter as possible.
-
-        It also supports the pasting of code snippets that have leading '>>>'
-        and '...' prompts in them.  This means that you can paste doctests from
-        files or docstrings (even if they have leading whitespace), and the
-        code will execute correctly.  You can then use '%history -tn' to see
-        the translated history without line numbers; this will give you the
-        input after removal of all the leading prompts and whitespace, which
-        can be pasted back into an editor.
-
-        With these features, you can switch into this mode easily whenever you
-        need to do testing and changes to doctests, without having to leave
-        your existing IPython session.
-
-**%ed**::
-
-	Alias to %edit.
-
-**%edit**::
-
-	Bring up an editor and execute the resulting code.
-
-        Usage:
-          %edit [options] [args]
-
-        %edit runs IPython's editor hook.  The default version of this hook is
-        set to call the __IPYTHON__.rc.editor command.  This is read from your
-        environment variable $EDITOR.  If this isn't found, it will default to
-        vi under Linux/Unix and to notepad under Windows.  See the end of this
-        docstring for how to change the editor hook.
-
-        You can also set the value of this editor via the command line option
-        '-editor' or in your ipythonrc file. This is useful if you wish to use
-        specifically for IPython an editor different from your typical default
-        (and for Windows users who typically don't set environment variables).
-
-        This command allows you to conveniently edit multi-line code right in
-        your IPython session.
-        
-        If called without arguments, %edit opens up an empty editor with a
-        temporary file and will execute the contents of this file when you
-        close it (don't forget to save it!).
-
-
-        Options:
-
-        -n <number>: open the editor at a specified line number.  By default,
-        the IPython editor hook uses the unix syntax 'editor +N filename', but
-        you can configure this by providing your own modified hook if your
-        favorite editor supports line-number specifications with a different
-        syntax.
-        
-        -p: this will call the editor with the same data as the previous time
-        it was used, regardless of how long ago (in your current session) it
-        was.
-
-        -r: use 'raw' input.  This option only applies to input taken from the
-        user's history.  By default, the 'processed' history is used, so that
-        magics are loaded in their transformed version to valid Python.  If
-        this option is given, the raw input as typed as the command line is
-        used instead.  When you exit the editor, it will be executed by
-        IPython's own processor.
-        
-        -x: do not execute the edited code immediately upon exit. This is
-        mainly useful if you are editing programs which need to be called with
-        command line arguments, which you can then do using %run.
-
-
-        Arguments:
-
-        If arguments are given, the following possibilites exist:
-
-        - The arguments are numbers or pairs of colon-separated numbers (like
-        1 4:8 9). These are interpreted as lines of previous input to be
-        loaded into the editor. The syntax is the same of the %macro command.
-
-        - If the argument doesn't start with a number, it is evaluated as a
-        variable and its contents loaded into the editor. You can thus edit
-        any string which contains python code (including the result of
-        previous edits).
-
-        - If the argument is the name of an object (other than a string),
-        IPython will try to locate the file where it was defined and open the
-        editor at the point where it is defined. You can use `%edit function`
-        to load an editor exactly at the point where 'function' is defined,
-        edit it and have the file be executed automatically.
-
-        If the object is a macro (see %macro for details), this opens up your
-        specified editor with a temporary file containing the macro's data.
-        Upon exit, the macro is reloaded with the contents of the file.
-
-        Note: opening at an exact line is only supported under Unix, and some
-        editors (like kedit and gedit up to Gnome 2.8) do not understand the
-        '+NUMBER' parameter necessary for this feature. Good editors like
-        (X)Emacs, vi, jed, pico and joe all do.
-
-        - If the argument is not found as a variable, IPython will look for a
-        file with that name (adding .py if necessary) and load it into the
-        editor. It will execute its contents with execfile() when you exit,
-        loading any code in the file into your interactive namespace.
-
-        After executing your code, %edit will return as output the code you
-        typed in the editor (except when it was an existing file). This way
-        you can reload the code in further invocations of %edit as a variable,
-        via _<NUMBER> or Out[<NUMBER>], where <NUMBER> is the prompt number of
-        the output.
-
-        Note that %edit is also available through the alias %ed.
-
-        This is an example of creating a simple function inside the editor and
-        then modifying it. First, start up the editor:
-
-        In [1]: ed\
-        Editing... done. Executing edited code...\
-        Out[1]: 'def foo():\n    print "foo() was defined in an editing session"\n'
-
-        We can then call the function foo():
-        
-        In [2]: foo()\
-        foo() was defined in an editing session
-
-        Now we edit foo.  IPython automatically loads the editor with the
-        (temporary) file where foo() was previously defined:
-        
-        In [3]: ed foo\
-        Editing... done. Executing edited code...
-
-        And if we call foo() again we get the modified version:
-        
-        In [4]: foo()\
-        foo() has now been changed!
-
-        Here is an example of how to edit a code snippet successive
-        times. First we call the editor:
-
-        In [8]: ed\
-        Editing... done. Executing edited code...\
-        hello\
-        Out[8]: "print 'hello'\n"
-
-        Now we call it again with the previous output (stored in _):
-
-        In [9]: ed _\
-        Editing... done. Executing edited code...\
-        hello world\
-        Out[9]: "print 'hello world'\n"
-
-        Now we call it with the output #8 (stored in _8, also as Out[8]):
-
-        In [10]: ed _8\
-        Editing... done. Executing edited code...\
-        hello again\
-        Out[10]: "print 'hello again'\n"
-
-
-        Changing the default editor hook:
-
-        If you wish to write your own editor hook, you can put it in a
-        configuration file which you load at startup time.  The default hook
-        is defined in the IPython.hooks module, and you can use that as a
-        starting example for further modifications.  That file also has
-        general instructions on how to set a new hook for use once you've
-        defined it.
-
-**%env**::
-
-	List environment variables.
-
-**%exit**::
-
-	Exit IPython, confirming if configured to do so.
-
-        You can configure whether IPython asks for confirmation upon exit by
-        setting the confirm_exit flag in the ipythonrc file.
-
-**%hist**::
-
-	Alternate name for %history.
-
-**%history**::
-
-	Print input history (_i<n> variables), with most recent last.
-    
-    %history       -> print at most 40 inputs (some may be multi-line)\
-    %history n     -> print at most n inputs\
-    %history n1 n2 -> print inputs between n1 and n2 (n2 not included)\
-    
-    Each input's number <n> is shown, and is accessible as the
-    automatically generated variable _i<n>.  Multi-line statements are
-    printed starting at a new line for easy copy/paste.
-    
-
-    Options:
-
-      -n: do NOT print line numbers. This is useful if you want to get a
-      printout of many lines which can be directly pasted into a text
-      editor.
-
-      This feature is only available if numbered prompts are in use.
-
-      -t: (default) print the 'translated' history, as IPython understands it.
-      IPython filters your input and converts it all into valid Python source
-      before executing it (things like magics or aliases are turned into
-      function calls, for example). With this option, you'll see the native
-      history instead of the user-entered version: '%cd /' will be seen as
-      '_ip.magic("%cd /")' instead of '%cd /'.
-      
-      -r: print the 'raw' history, i.e. the actual commands you typed.
-      
-      -g: treat the arg as a pattern to grep for in (full) history.
-      This includes the "shadow history" (almost all commands ever written).
-      Use '%hist -g' to show full shadow history (may be very long).
-      In shadow history, every index nuwber starts with 0.
-
-      -f FILENAME: instead of printing the output to the screen, redirect it to
-       the given file.  The file is always overwritten, though IPython asks for
-       confirmation first if it already exists.
-
-**%logoff**::
-
-	Temporarily stop logging.
-
-        You must have previously started logging.
-
-**%logon**::
-
-	Restart logging.
-
-        This function is for restarting logging which you've temporarily
-        stopped with %logoff. For starting logging for the first time, you
-        must use the %logstart function, which allows you to specify an
-        optional log filename.
-
-**%logstart**::
-
-	Start logging anywhere in a session.
-
-        %logstart [-o|-r|-t] [log_name [log_mode]]
-
-        If no name is given, it defaults to a file named 'ipython_log.py' in your
-        current directory, in 'rotate' mode (see below).
-
-        '%logstart name' saves to file 'name' in 'backup' mode.  It saves your
-        history up to that point and then continues logging.
-
-        %logstart takes a second optional parameter: logging mode. This can be one
-        of (note that the modes are given unquoted):\
-          append: well, that says it.\
-          backup: rename (if exists) to name~ and start name.\
-          global: single logfile in your home dir, appended to.\
-          over  : overwrite existing log.\
-          rotate: create rotating logs name.1~, name.2~, etc.
-
-        Options:
-
-          -o: log also IPython's output.  In this mode, all commands which
-          generate an Out[NN] prompt are recorded to the logfile, right after
-          their corresponding input line.  The output lines are always
-          prepended with a '#[Out]# ' marker, so that the log remains valid
-          Python code.
-
-          Since this marker is always the same, filtering only the output from
-          a log is very easy, using for example a simple awk call:
-
-            awk -F'#\[Out\]# ' '{if($2) {print $2}}' ipython_log.py
-
-          -r: log 'raw' input.  Normally, IPython's logs contain the processed
-          input, so that user lines are logged in their final form, converted
-          into valid Python.  For example, %Exit is logged as
-          '_ip.magic("Exit").  If the -r flag is given, all input is logged
-          exactly as typed, with no transformations applied.
-
-          -t: put timestamps before each input line logged (these are put in
-          comments).
-
-**%logstate**::
-
-	Print the status of the logging system.
-
-**%logstop**::
-
-	Fully stop logging and close log file.
-
-        In order to start logging again, a new %logstart call needs to be made,
-        possibly (though not necessarily) with a new filename, mode and other
-        options.
-
-**%lsmagic**::
-
-	List currently available magic functions.
-
-**%macro**::
-
-	Define a set of input lines as a macro for future re-execution.
-
-        Usage:\
-          %macro [options] name n1-n2 n3-n4 ... n5 .. n6 ...
-
-        Options:
-        
-          -r: use 'raw' input.  By default, the 'processed' history is used,
-          so that magics are loaded in their transformed version to valid
-          Python.  If this option is given, the raw input as typed as the
-          command line is used instead.
-
-        This will define a global variable called `name` which is a string
-        made of joining the slices and lines you specify (n1,n2,... numbers
-        above) from your input history into a single string. This variable
-        acts like an automatic function which re-executes those lines as if
-        you had typed them. You just type 'name' at the prompt and the code
-        executes.
-
-        The notation for indicating number ranges is: n1-n2 means 'use line
-        numbers n1,...n2' (the endpoint is included).  That is, '5-7' means
-        using the lines numbered 5,6 and 7.
-
-        Note: as a 'hidden' feature, you can also use traditional python slice
-        notation, where N:M means numbers N through M-1.
-
-        For example, if your history contains (%hist prints it):
-        
-          44: x=1\
-          45: y=3\
-          46: z=x+y\
-          47: print x\
-          48: a=5\
-          49: print 'x',x,'y',y\
-
-        you can create a macro with lines 44 through 47 (included) and line 49
-        called my_macro with:
-
-          In [51]: %macro my_macro 44-47 49
-
-        Now, typing `my_macro` (without quotes) will re-execute all this code
-        in one pass.
-
-        You don't need to give the line-numbers in order, and any given line
-        number can appear multiple times. You can assemble macros with any
-        lines from your input history in any order.
-
-        The macro is a simple object which holds its value in an attribute,
-        but IPython's display system checks for macros and executes them as
-        code instead of printing them when you type their name.
-
-        You can view a macro's contents by explicitly printing it with:
-        
-          'print macro_name'.
-
-        For one-off cases which DON'T contain magic function calls in them you
-        can obtain similar results by explicitly executing slices from your
-        input history with:
-
-          In [60]: exec In[44:48]+In[49]
-
-**%magic**::
-
-	Print information about the magic function system.
-
-**%mglob**::
-
-	    This program allows specifying filenames with "mglob" mechanism.
-    Supported syntax in globs (wilcard matching patterns)::
-    
-     *.cpp ?ellowo*                
-         - obvious. Differs from normal glob in that dirs are not included.
-           Unix users might want to write this as: "*.cpp" "?ellowo*"
-     rec:/usr/share=*.txt,*.doc    
-         - get all *.txt and *.doc under /usr/share, 
-           recursively
-     rec:/usr/share
-         - All files under /usr/share, recursively
-     rec:*.py
-         - All .py files under current working dir, recursively
-     foo                           
-         - File or dir foo
-     !*.bak readme*                   
-         - readme*, exclude files ending with .bak
-     !.svn/ !.hg/ !*_Data/ rec:.
-         - Skip .svn, .hg, foo_Data dirs (and their subdirs) in recurse.
-           Trailing / is the key, \ does not work!
-     dir:foo                       
-         - the directory foo if it exists (not files in foo)
-     dir:*                         
-         - all directories in current folder
-     foo.py bar.* !h* rec:*.py
-         - Obvious. !h* exclusion only applies for rec:*.py.
-           foo.py is *not* included twice.
-     @filelist.txt
-         - All files listed in 'filelist.txt' file, on separate lines.
-
-**%page**::
-
-	Pretty print the object and display it through a pager.
-        
-        %page [options] OBJECT
-
-        If no object is given, use _ (last output).
-        
-        Options:
-
-          -r: page str(object), don't pretty-print it.
-
-**%pdb**::
-
-	Control the automatic calling of the pdb interactive debugger.
-
-        Call as '%pdb on', '%pdb 1', '%pdb off' or '%pdb 0'. If called without
-        argument it works as a toggle.
-
-        When an exception is triggered, IPython can optionally call the
-        interactive pdb debugger after the traceback printout. %pdb toggles
-        this feature on and off.
-
-        The initial state of this feature is set in your ipythonrc
-        configuration file (the variable is called 'pdb').
-
-        If you want to just activate the debugger AFTER an exception has fired,
-        without having to type '%pdb on' and rerunning your code, you can use
-        the %debug magic.
-
-**%pdef**::
-
-	Print the definition header for any callable object.
-
-        If the object is a class, print the constructor information.
-
-**%pdoc**::
-
-	Print the docstring for an object.
-
-        If the given object is a class, it will print both the class and the
-        constructor docstrings.
-
-**%pfile**::
-
-	Print (or run through pager) the file where an object is defined.
-
-        The file opens at the line where the object definition begins. IPython
-        will honor the environment variable PAGER if set, and otherwise will
-        do its best to print the file in a convenient form.
-
-        If the given argument is not an object currently defined, IPython will
-        try to interpret it as a filename (automatically adding a .py extension
-        if needed). You can thus use %pfile as a syntax highlighting code
-        viewer.
-
-**%pinfo**::
-
-	Provide detailed information about an object.
-    
-        '%pinfo object' is just a synonym for object? or ?object.
-
-**%popd**::
-
-	Change to directory popped off the top of the stack.
-
-**%profile**::
-
-	Print your currently active IPyhton profile.
-
-**%prun**::
-
-	Run a statement through the python code profiler.
-
-        Usage:\
-          %prun [options] statement
-
-        The given statement (which doesn't require quote marks) is run via the
-        python profiler in a manner similar to the profile.run() function.
-        Namespaces are internally managed to work correctly; profile.run
-        cannot be used in IPython because it makes certain assumptions about
-        namespaces which do not hold under IPython.
-
-        Options:
-
-        -l <limit>: you can place restrictions on what or how much of the
-        profile gets printed. The limit value can be:
-
-          * A string: only information for function names containing this string
-          is printed.
-
-          * An integer: only these many lines are printed.
-
-          * A float (between 0 and 1): this fraction of the report is printed
-          (for example, use a limit of 0.4 to see the topmost 40% only).
-
-        You can combine several limits with repeated use of the option. For
-        example, '-l __init__ -l 5' will print only the topmost 5 lines of
-        information about class constructors.
-
-        -r: return the pstats.Stats object generated by the profiling. This
-        object has all the information about the profile in it, and you can
-        later use it for further analysis or in other functions.
-
-       -s <key>: sort profile by given key. You can provide more than one key
-        by using the option several times: '-s key1 -s key2 -s key3...'. The
-        default sorting key is 'time'.
-
-        The following is copied verbatim from the profile documentation
-        referenced below:
-
-        When more than one key is provided, additional keys are used as
-        secondary criteria when the there is equality in all keys selected
-        before them.
-        
-        Abbreviations can be used for any key names, as long as the
-        abbreviation is unambiguous.  The following are the keys currently
-        defined:
-
-                Valid Arg       Meaning\
-                  "calls"      call count\
-                  "cumulative" cumulative time\
-                  "file"       file name\
-                  "module"     file name\
-                  "pcalls"     primitive call count\
-                  "line"       line number\
-                  "name"       function name\
-                  "nfl"        name/file/line\
-                  "stdname"    standard name\
-                  "time"       internal time
-
-        Note that all sorts on statistics are in descending order (placing
-        most time consuming items first), where as name, file, and line number
-        searches are in ascending order (i.e., alphabetical). The subtle
-        distinction between "nfl" and "stdname" is that the standard name is a
-        sort of the name as printed, which means that the embedded line
-        numbers get compared in an odd way.  For example, lines 3, 20, and 40
-        would (if the file names were the same) appear in the string order
-        "20" "3" and "40".  In contrast, "nfl" does a numeric compare of the
-        line numbers.  In fact, sort_stats("nfl") is the same as
-        sort_stats("name", "file", "line").
-
-        -T <filename>: save profile results as shown on screen to a text
-        file. The profile is still shown on screen.
-
-        -D <filename>: save (via dump_stats) profile statistics to given
-        filename. This data is in a format understod by the pstats module, and
-        is generated by a call to the dump_stats() method of profile
-        objects. The profile is still shown on screen.
-
-        If you want to run complete programs under the profiler's control, use
-        '%run -p [prof_opts] filename.py [args to program]' where prof_opts
-        contains profiler specific options as described here.
-        
-        You can read the complete documentation for the profile module with:\
-          In [1]: import profile; profile.help()
-
-**%psearch**::
-
-	Search for object in namespaces by wildcard.
-
-        %psearch [options] PATTERN [OBJECT TYPE]
-
-        Note: ? can be used as a synonym for %psearch, at the beginning or at
-        the end: both a*? and ?a* are equivalent to '%psearch a*'.  Still, the
-        rest of the command line must be unchanged (options come first), so
-        for example the following forms are equivalent
-
-        %psearch -i a* function
-        -i a* function?
-        ?-i a* function
-
-        Arguments:
-        
-          PATTERN
-
-          where PATTERN is a string containing * as a wildcard similar to its
-          use in a shell.  The pattern is matched in all namespaces on the
-          search path. By default objects starting with a single _ are not
-          matched, many IPython generated objects have a single
-          underscore. The default is case insensitive matching. Matching is
-          also done on the attributes of objects and not only on the objects
-          in a module.
-
-          [OBJECT TYPE]
-
-          Is the name of a python type from the types module. The name is
-          given in lowercase without the ending type, ex. StringType is
-          written string. By adding a type here only objects matching the
-          given type are matched. Using all here makes the pattern match all
-          types (this is the default).
-
-        Options:
-
-          -a: makes the pattern match even objects whose names start with a
-          single underscore.  These names are normally ommitted from the
-          search.
-
-          -i/-c: make the pattern case insensitive/sensitive.  If neither of
-          these options is given, the default is read from your ipythonrc
-          file.  The option name which sets this value is
-          'wildcards_case_sensitive'.  If this option is not specified in your
-          ipythonrc file, IPython's internal default is to do a case sensitive
-          search.
-
-          -e/-s NAMESPACE: exclude/search a given namespace.  The pattern you
-          specifiy can be searched in any of the following namespaces:
-          'builtin', 'user', 'user_global','internal', 'alias', where
-          'builtin' and 'user' are the search defaults.  Note that you should
-          not use quotes when specifying namespaces.
-
-          'Builtin' contains the python module builtin, 'user' contains all
-          user data, 'alias' only contain the shell aliases and no python
-          objects, 'internal' contains objects used by IPython.  The
-          'user_global' namespace is only used by embedded IPython instances,
-          and it contains module-level globals.  You can add namespaces to the
-          search with -s or exclude them with -e (these options can be given
-          more than once).
-    
-        Examples:
-       
-        %psearch a*            -> objects beginning with an a
-        %psearch -e builtin a* -> objects NOT in the builtin space starting in a
-        %psearch a* function   -> all functions beginning with an a
-        %psearch re.e*         -> objects beginning with an e in module re
-        %psearch r*.e*         -> objects that start with e in modules starting in r
-        %psearch r*.* string   -> all strings in modules beginning with r
-
-        Case sensitve search:
-       
-        %psearch -c a*         list all object beginning with lower case a
-
-        Show objects beginning with a single _:
-       
-        %psearch -a _*         list objects beginning with a single underscore
-
-**%psource**::
-
-	Print (or run through pager) the source code for an object.
-
-**%pushd**::
-
-	Place the current dir on stack and change directory.
-        
-        Usage:\
-          %pushd ['dirname']
-
-**%pwd**::
-
-	Return the current working directory path.
-
-**%pycat**::
-
-	Show a syntax-highlighted file through a pager.
-
-        This magic is similar to the cat utility, but it will assume the file
-        to be Python source and will show it with syntax highlighting.
-
-**%quickref**::
-
-	 Show a quick reference sheet
-
-**%quit**::
-
-	Exit IPython, confirming if configured to do so (like %exit)
-
-**%r**::
-
-	Repeat previous input.
-
-        Note: Consider using the more powerfull %rep instead!
-        
-        If given an argument, repeats the previous command which starts with
-        the same string, otherwise it just repeats the previous input.
-
-        Shell escaped commands (with ! as first character) are not recognized
-        by this system, only pure python code and magic commands.
-
-**%rehashdir**::
-
-	 Add executables in all specified dirs to alias table
-     
-    Usage:
-
-    %rehashdir c:/bin;c:/tools
-      - Add all executables under c:/bin and c:/tools to alias table, in 
-      order to make them directly executable from any directory.
-        
-      Without arguments, add all executables in current directory.
-
-**%rehashx**::
-
-	Update the alias table with all executable files in $PATH.
-
-        This version explicitly checks that every entry in $PATH is a file
-        with execute access (os.X_OK), so it is much slower than %rehash.
-
-        Under Windows, it checks executability as a match agains a
-        '|'-separated string of extensions, stored in the IPython config
-        variable win_exec_ext.  This defaults to 'exe|com|bat'.
-        
-        This function also resets the root module cache of module completer,
-        used on slow filesystems.
-
-**%rep**::
-
-	 Repeat a command, or get command to input line for editing
-
-    - %rep (no arguments):
-    
-    Place a string version of last computation result (stored in the special '_'
-    variable) to the next input prompt. Allows you to create elaborate command
-    lines without using copy-paste::
-    
-        $ l = ["hei", "vaan"]       
-        $ "".join(l)        
-        ==> heivaan        
-        $ %rep        
-        $ heivaan_ <== cursor blinking    
-    
-    %rep 45
-    
-    Place history line 45 to next input prompt. Use %hist to find out the
-    number.
-    
-    %rep 1-4 6-7 3
-    
-    Repeat the specified lines immediately. Input slice syntax is the same as
-    in %macro and %save.
-    
-    %rep foo
-    
-    Place the most recent line that has the substring "foo" to next input.
-    (e.g. 'svn ci -m foobar').
-
-**%reset**::
-
-	Resets the namespace by removing all names defined by the user.
-
-        Input/Output history are left around in case you need them.
-
-**%run**::
-
-	Run the named file inside IPython as a program.
-
-        Usage:\
-          %run [-n -i -t [-N<N>] -d [-b<N>] -p [profile options]] file [args]
-        
-        Parameters after the filename are passed as command-line arguments to
-        the program (put in sys.argv). Then, control returns to IPython's
-        prompt.
-
-        This is similar to running at a system prompt:\
-          $ python file args\
-        but with the advantage of giving you IPython's tracebacks, and of
-        loading all variables into your interactive namespace for further use
-        (unless -p is used, see below).
-
-        The file is executed in a namespace initially consisting only of
-        __name__=='__main__' and sys.argv constructed as indicated. It thus
-        sees its environment as if it were being run as a stand-alone program
-        (except for sharing global objects such as previously imported
-        modules). But after execution, the IPython interactive namespace gets
-        updated with all variables defined in the program (except for __name__
-        and sys.argv). This allows for very convenient loading of code for
-        interactive work, while giving each program a 'clean sheet' to run in.
-
-        Options:
-        
-        -n: __name__ is NOT set to '__main__', but to the running file's name
-        without extension (as python does under import).  This allows running
-        scripts and reloading the definitions in them without calling code
-        protected by an ' if __name__ == "__main__" ' clause.
-
-        -i: run the file in IPython's namespace instead of an empty one. This
-        is useful if you are experimenting with code written in a text editor
-        which depends on variables defined interactively.
-
-        -e: ignore sys.exit() calls or SystemExit exceptions in the script
-        being run.  This is particularly useful if IPython is being used to
-        run unittests, which always exit with a sys.exit() call.  In such
-        cases you are interested in the output of the test results, not in
-        seeing a traceback of the unittest module.
-
-        -t: print timing information at the end of the run.  IPython will give
-        you an estimated CPU time consumption for your script, which under
-        Unix uses the resource module to avoid the wraparound problems of
-        time.clock().  Under Unix, an estimate of time spent on system tasks
-        is also given (for Windows platforms this is reported as 0.0).
-
-        If -t is given, an additional -N<N> option can be given, where <N>
-        must be an integer indicating how many times you want the script to
-        run.  The final timing report will include total and per run results.
-
-        For example (testing the script uniq_stable.py):
-
-            In [1]: run -t uniq_stable
-
-            IPython CPU timings (estimated):\
-              User  :    0.19597 s.\
-              System:        0.0 s.\
-
-            In [2]: run -t -N5 uniq_stable
-
-            IPython CPU timings (estimated):\
-            Total runs performed: 5\
-              Times :      Total       Per run\
-              User  :   0.910862 s,  0.1821724 s.\
-              System:        0.0 s,        0.0 s.
-
-        -d: run your program under the control of pdb, the Python debugger.
-        This allows you to execute your program step by step, watch variables,
-        etc.  Internally, what IPython does is similar to calling:
-        
-          pdb.run('execfile("YOURFILENAME")')
-
-        with a breakpoint set on line 1 of your file.  You can change the line
-        number for this automatic breakpoint to be <N> by using the -bN option
-        (where N must be an integer).  For example:
-
-          %run -d -b40 myscript
-
-        will set the first breakpoint at line 40 in myscript.py.  Note that
-        the first breakpoint must be set on a line which actually does
-        something (not a comment or docstring) for it to stop execution.
-
-        When the pdb debugger starts, you will see a (Pdb) prompt.  You must
-        first enter 'c' (without qoutes) to start execution up to the first
-        breakpoint.
-
-        Entering 'help' gives information about the use of the debugger.  You
-        can easily see pdb's full documentation with "import pdb;pdb.help()"
-        at a prompt.
-
-        -p: run program under the control of the Python profiler module (which
-        prints a detailed report of execution times, function calls, etc).
-
-        You can pass other options after -p which affect the behavior of the
-        profiler itself. See the docs for %prun for details.
-
-        In this mode, the program's variables do NOT propagate back to the
-        IPython interactive namespace (because they remain in the namespace
-        where the profiler executes them).
-
-        Internally this triggers a call to %prun, see its documentation for
-        details on the options available specifically for profiling.
-
-        There is one special usage for which the text above doesn't apply:
-        if the filename ends with .ipy, the file is run as ipython script,
-        just as if the commands were written on IPython prompt.
-
-**%runlog**::
-
-	Run files as logs.
-
-        Usage:\
-          %runlog file1 file2 ...
-
-        Run the named files (treating them as log files) in sequence inside
-        the interpreter, and return to the prompt.  This is much slower than
-        %run because each line is executed in a try/except block, but it
-        allows running files with syntax errors in them.
-
-        Normally IPython will guess when a file is one of its own logfiles, so
-        you can typically use %run even for logs. This shorthand allows you to
-        force any file to be treated as a log file.
-
-**%save**::
-
-	Save a set of lines to a given filename.
-
-        Usage:\
-          %save [options] filename n1-n2 n3-n4 ... n5 .. n6 ...
-
-        Options:
-        
-          -r: use 'raw' input.  By default, the 'processed' history is used,
-          so that magics are loaded in their transformed version to valid
-          Python.  If this option is given, the raw input as typed as the
-          command line is used instead.
-
-        This function uses the same syntax as %macro for line extraction, but
-        instead of creating a macro it saves the resulting string to the
-        filename you specify.
-
-        It adds a '.py' extension to the file if you don't do so yourself, and
-        it asks for confirmation before overwriting existing files.
-
-**%sc**::
-
-	Shell capture - execute a shell command and capture its output.
-
-        DEPRECATED. Suboptimal, retained for backwards compatibility.
-        
-        You should use the form 'var = !command' instead. Example:
-         
-         "%sc -l myfiles = ls ~" should now be written as
-            
-         "myfiles = !ls ~"
-         
-        myfiles.s, myfiles.l and myfiles.n still apply as documented
-        below.
-
-        --
-        %sc [options] varname=command
-
-        IPython will run the given command using commands.getoutput(), and
-        will then update the user's interactive namespace with a variable
-        called varname, containing the value of the call.  Your command can
-        contain shell wildcards, pipes, etc.
-
-        The '=' sign in the syntax is mandatory, and the variable name you
-        supply must follow Python's standard conventions for valid names.
-        
-        (A special format without variable name exists for internal use)
-
-        Options:
-
-          -l: list output.  Split the output on newlines into a list before
-          assigning it to the given variable.  By default the output is stored
-          as a single string.
-
-          -v: verbose.  Print the contents of the variable.
-
-        In most cases you should not need to split as a list, because the
-        returned value is a special type of string which can automatically
-        provide its contents either as a list (split on newlines) or as a
-        space-separated string.  These are convenient, respectively, either
-        for sequential processing or to be passed to a shell command.
-
-        For example:
-
-            # Capture into variable a
-            In [9]: sc a=ls *py
-
-            # a is a string with embedded newlines
-            In [10]: a
-            Out[10]: 'setup.py win32_manual_post_install.py'
-
-            # which can be seen as a list:
-            In [11]: a.l
-            Out[11]: ['setup.py', 'win32_manual_post_install.py']
-
-            # or as a whitespace-separated string:
-            In [12]: a.s
-            Out[12]: 'setup.py win32_manual_post_install.py'
-
-            # a.s is useful to pass as a single command line:
-            In [13]: !wc -l $a.s
-              146 setup.py
-              130 win32_manual_post_install.py
-              276 total
-
-            # while the list form is useful to loop over:
-            In [14]: for f in a.l:
-               ....:      !wc -l $f
-               ....:
-            146 setup.py
-            130 win32_manual_post_install.py
-
-        Similiarly, the lists returned by the -l option are also special, in
-        the sense that you can equally invoke the .s attribute on them to
-        automatically get a whitespace-separated string from their contents:
-
-            In [1]: sc -l b=ls *py
-
-            In [2]: b
-            Out[2]: ['setup.py', 'win32_manual_post_install.py']
-
-            In [3]: b.s
-            Out[3]: 'setup.py win32_manual_post_install.py'
-
-        In summary, both the lists and strings used for ouptut capture have
-        the following special attributes:
-
-            .l (or .list) : value as list.
-            .n (or .nlstr): value as newline-separated string.
-            .s (or .spstr): value as space-separated string.
-
-**%store**::
-
-	Lightweight persistence for python variables.
-
-    Example:
-    
-    ville@badger[~]|1> A = ['hello',10,'world']\
-    ville@badger[~]|2> %store A\
-    ville@badger[~]|3> Exit
-    
-    (IPython session is closed and started again...)
-    
-    ville@badger:~$ ipython -p pysh\
-    ville@badger[~]|1> print A
-    
-    ['hello', 10, 'world']
-    
-    Usage:
-    
-    %store          - Show list of all variables and their current values\
-    %store <var>    - Store the *current* value of the variable to disk\
-    %store -d <var> - Remove the variable and its value from storage\
-    %store -z       - Remove all variables from storage\
-    %store -r       - Refresh all variables from store (delete current vals)\
-    %store foo >a.txt  - Store value of foo to new file a.txt\
-    %store foo >>a.txt - Append value of foo to file a.txt\   
-    
-    It should be noted that if you change the value of a variable, you
-    need to %store it again if you want to persist the new value.
-    
-    Note also that the variables will need to be pickleable; most basic
-    python types can be safely %stored.
-    
-    Also aliases can be %store'd across sessions.
-
-**%sx**::
-
-	Shell execute - run a shell command and capture its output.
-
-        %sx command
-
-        IPython will run the given command using commands.getoutput(), and
-        return the result formatted as a list (split on '\n').  Since the
-        output is _returned_, it will be stored in ipython's regular output
-        cache Out[N] and in the '_N' automatic variables.
-
-        Notes:
-
-        1) If an input line begins with '!!', then %sx is automatically
-        invoked.  That is, while:
-          !ls
-        causes ipython to simply issue system('ls'), typing
-          !!ls
-        is a shorthand equivalent to:
-          %sx ls
-        
-        2) %sx differs from %sc in that %sx automatically splits into a list,
-        like '%sc -l'.  The reason for this is to make it as easy as possible
-        to process line-oriented shell output via further python commands.
-        %sc is meant to provide much finer control, but requires more
-        typing.
-
-        3) Just like %sc -l, this is a list with special attributes:
-
-          .l (or .list) : value as list.
-          .n (or .nlstr): value as newline-separated string.
-          .s (or .spstr): value as whitespace-separated string.
-
-        This is very useful when trying to use such lists as arguments to
-        system commands.
-
-**%system_verbose**::
-
-	Set verbose printing of system calls.
-
-        If called without an argument, act as a toggle
-
-**%time**::
-
-	Time execution of a Python statement or expression.
-
-        The CPU and wall clock times are printed, and the value of the
-        expression (if any) is returned.  Note that under Win32, system time
-        is always reported as 0, since it can not be measured.
-
-        This function provides very basic timing functionality.  In Python
-        2.3, the timeit module offers more control and sophistication, so this
-        could be rewritten to use it (patches welcome).
-        
-        Some examples:
-
-          In [1]: time 2**128
-          CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
-          Wall time: 0.00
-          Out[1]: 340282366920938463463374607431768211456L
-
-          In [2]: n = 1000000
-
-          In [3]: time sum(range(n))
-          CPU times: user 1.20 s, sys: 0.05 s, total: 1.25 s
-          Wall time: 1.37
-          Out[3]: 499999500000L
-
-          In [4]: time print 'hello world'
-          hello world
-          CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
-          Wall time: 0.00
-
-          Note that the time needed by Python to compile the given expression
-          will be reported if it is more than 0.1s.  In this example, the
-          actual exponentiation is done by Python at compilation time, so while
-          the expression can take a noticeable amount of time to compute, that
-          time is purely due to the compilation:
-
-          In [5]: time 3**9999;
-          CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
-          Wall time: 0.00 s
-
-          In [6]: time 3**999999;
-          CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
-          Wall time: 0.00 s
-          Compiler : 0.78 s
-
-**%timeit**::
-
-	Time execution of a Python statement or expression
-
-        Usage:\
-          %timeit [-n<N> -r<R> [-t|-c]] statement
-
-        Time execution of a Python statement or expression using the timeit
-        module.
-
-        Options:
-        -n<N>: execute the given statement <N> times in a loop. If this value
-        is not given, a fitting value is chosen. 
-        
-        -r<R>: repeat the loop iteration <R> times and take the best result.
-        Default: 3
-        
-        -t: use time.time to measure the time, which is the default on Unix.
-        This function measures wall time.
-        
-        -c: use time.clock to measure the time, which is the default on
-        Windows and measures wall time. On Unix, resource.getrusage is used
-        instead and returns the CPU user time.
-
-        -p<P>: use a precision of <P> digits to display the timing result.
-        Default: 3
-
-        
-        Examples:\
-          In [1]: %timeit pass
-          10000000 loops, best of 3: 53.3 ns per loop
-
-          In [2]: u = None
-
-          In [3]: %timeit u is None
-          10000000 loops, best of 3: 184 ns per loop
-
-          In [4]: %timeit -r 4 u == None
-          1000000 loops, best of 4: 242 ns per loop
-
-          In [5]: import time
-
-          In [6]: %timeit -n1 time.sleep(2)
-          1 loops, best of 3: 2 s per loop
-          
-
-        The times reported by %timeit will be slightly higher than those
-        reported by the timeit.py script when variables are accessed. This is
-        due to the fact that %timeit executes the statement in the namespace
-        of the shell, compared with timeit.py, which uses a single setup
-        statement to import function or create variables. Generally, the bias
-        does not matter as long as results from timeit.py are not mixed with
-        those from %timeit.
-
-**%unalias**::
-
-	Remove an alias
-
-**%upgrade**::
-
-	 Upgrade your IPython installation
-        
-        This will copy the config files that don't yet exist in your 
-        ipython dir from the system config dir. Use this after upgrading 
-        IPython if you don't wish to delete your .ipython dir.
-
-        Call with -nolegacy to get rid of ipythonrc* files (recommended for
-        new users)
-
-**%which**::
-
-	 %which <cmd> => search PATH for files matching cmd. Also scans aliases.
-
-    Traverses PATH and prints all files (not just executables!) that match the
-    pattern on command line. Probably more useful in finding stuff
-    interactively than 'which', which only prints the first matching item.
-    
-    Also discovers and expands aliases, so you'll see what will be executed
-    when you call an alias.
-    
-    Example:
-    
-    [~]|62> %which d
-    d -> ls -F --color=auto
-      == c:\cygwin\bin\ls.exe
-    c:\cygwin\bin\d.exe
-    
-    [~]|64> %which diff*
-    diff3 -> diff3
-      == c:\cygwin\bin\diff3.exe
-    diff -> diff
-      == c:\cygwin\bin\diff.exe
-    c:\cygwin\bin\diff.exe
-    c:\cygwin\bin\diff3.exe
-
-**%who**::
-
-	Print all interactive variables, with some minimal formatting.
-
-        If any arguments are given, only variables whose type matches one of
-        these are printed.  For example:
-
-          %who function str
-
-        will only list functions and strings, excluding all other types of
-        variables.  To find the proper type names, simply use type(var) at a
-        command line to see how python prints type names.  For example:
-
-          In [1]: type('hello')\
-          Out[1]: <type 'str'>
-
-        indicates that the type name for strings is 'str'.
-
-        %who always excludes executed names loaded through your configuration
-        file and things which are internal to IPython.
-
-        This is deliberate, as typically you may load many modules and the
-        purpose of %who is to show you only what you've manually defined.
-
-**%who_ls**::
-
-	Return a sorted list of all interactive variables.
-
-        If arguments are given, only variables of types matching these
-        arguments are returned.
-
-**%whos**::
-
-	Like %who, but gives some extra information about each variable.
-
-        The same type filtering of %who can be applied here.
-
-        For all variables, the type is printed. Additionally it prints:
-        
-          - For {},[],(): their length.
-
-          - For numpy and Numeric arrays, a summary with shape, number of
-          elements, typecode and size in memory.
-
-          - Everything else: a string representation, snipping their middle if
-          too long.
-
-**%xmode**::
-
-	Switch modes for the exception handlers.
-
-        Valid modes: Plain, Context and Verbose.
-
-        If called without arguments, acts as a toggle.
-
-.. magic_end
 
 Access to the standard Python help
 ----------------------------------
diff --git a/docs/source/parallel/vision_beam_pattern.png b/docs/source/parallel/vision_beam_pattern.png
new file mode 100644
index 0000000000000000000000000000000000000000..e00a01a37fc1cb9182c3f16f29434150c54a75c3
GIT binary patch
literal 151053
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
Fe*x%3>r(&#

literal 0
Hc$@<O00001

diff --git a/docs/source/parallel/vision_cpu_load.png b/docs/source/parallel/vision_cpu_load.png
new file mode 100644
index 0000000000000000000000000000000000000000..7d3148549c5f35fc17902d0f226a1128794f5ff5
GIT binary patch
literal 20008
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
Qe+S4tRF*E1eD3@I0aS)fzW@LL

literal 0
Hc$@<O00001

diff --git a/docs/source/parallel/visionhpc.txt b/docs/source/parallel/visionhpc.txt
new file mode 100644
index 0000000..f0c4e04
--- /dev/null
+++ b/docs/source/parallel/visionhpc.txt
@@ -0,0 +1,246 @@
+==================================
+ IPython/Vision Beam Pattern Demo
+==================================
+
+
+Installing and testing IPython at OSC systems
+=============================================
+
+All components were installed from source and I have my environment set up to
+include ~/usr/local in my various necessary paths ($PATH, $PYTHONPATH, etc).
+Other than a slow filesystem for unpacking tarballs, the install went without a
+hitch.  For each needed component, I just downloaded the source tarball,
+unpacked it via::
+
+  tar xzf (or xjf if it's bz2) filename.tar.{gz,bz2}
+
+and then installed them (including IPython itself) with::
+
+  cd dirname/  # path to unpacked tarball
+  python setup.py install --prefix=~/usr/local/
+
+The components I installed are listed below.  For each one I give the main
+project link as well as a direct one to the file I actually dowloaded and used.
+
+- nose, used for testing:
+http://somethingaboutorange.com/mrl/projects/nose/
+http://somethingaboutorange.com/mrl/projects/nose/nose-0.10.3.tar.gz
+
+- Zope interface, used to declare interfaces in twisted and ipython.  Note:
+you must get this from the page linked below and not fro the defaul
+one(http://www.zope.org/Products/ZopeInterface) because the latter has an
+older version, it hasn't been updated in a long time.  This pypi link has
+the current release (3.4.1 as of this writing):
+http://pypi.python.org/pypi/zope.interface
+http://pypi.python.org/packages/source/z/zope.interface/zope.interface-3.4.1.tar.gz
+
+- pyopenssl, security layer used by foolscap.  Note: version 0.7 *must* be
+used: 
+http://sourceforge.net/projects/pyopenssl/
+http://downloads.sourceforge.net/pyopenssl/pyOpenSSL-0.6.tar.gz?modtime=1212595285&big_mirror=0
+
+
+- Twisted, used for all networking:
+http://twistedmatrix.com/trac/wiki/Downloads
+http://tmrc.mit.edu/mirror/twisted/Twisted/8.1/Twisted-8.1.0.tar.bz2
+
+- Foolscap, used for managing connections securely:
+http://foolscap.lothar.com/trac
+http://foolscap.lothar.com/releases/foolscap-0.3.1.tar.gz
+
+
+- IPython itself:
+http://ipython.scipy.org/
+http://ipython.scipy.org/dist/ipython-0.9.1.tar.gz
+
+
+I then ran the ipython test suite via::
+
+  iptest -vv
+
+and it passed with only::
+
+    ======================================================================
+    ERROR: testGetResult_2
+    ----------------------------------------------------------------------
+    DirtyReactorAggregateError: Reactor was unclean.
+    Selectables:
+    <Negotiation #0 on 10105>
+
+    ----------------------------------------------------------------------
+    Ran 419 tests in 33.971s
+
+    FAILED (SKIP=4, errors=1)
+
+In three more runs of the test suite I was able to reproduce this error
+sometimes but not always; for now I think we can move on but we need to
+investigate further.  Especially if we start seeing problems in real use (the
+test suite stresses the networking layer in particular ways that aren't
+necessarily typical of normal use).
+
+Next, I started an 8-engine cluster via::
+
+    perez@opt-login01[~]> ipcluster -n 8
+    Starting controller: Controller PID: 30845
+    ^X      Starting engines:    Engines PIDs:   [30846, 30847, 30848, 30849,
+    30850, 30851, 30852, 30853]
+    Log files: /home/perez/.ipython/log/ipcluster-30845-*
+
+    Your cluster is up and running.
+
+    [... etc]
+
+and in a separate ipython session checked that the cluster is running and I can
+access all the engines::
+
+    In [1]: from IPython.kernel import client
+
+    In [2]: mec = client.MultiEngineClient()
+
+    In [3]: mec.get_ids()
+    Out[3]: [0, 1, 2, 3, 4, 5, 6, 7]
+
+and run trivial code in them (after importing the ``random`` module in all
+engines)::
+
+    In [11]: mec.execute("x=random.randint(0,10)")
+    Out[11]:
+    <Results List>
+    [0] In [3]: x=random.randint(0,10)
+    [1] In [3]: x=random.randint(0,10)
+    [2] In [3]: x=random.randint(0,10)
+    [3] In [3]: x=random.randint(0,10)
+    [4] In [3]: x=random.randint(0,10)
+    [5] In [3]: x=random.randint(0,10)
+    [6] In [3]: x=random.randint(0,10)
+    [7] In [3]: x=random.randint(0,10)
+
+    In [12]: mec.pull('x')
+    Out[12]: [10, 0, 8, 10, 2, 9, 10, 7]
+
+
+We'll continue conducting more complex tests later, including instaling Vision
+locally and running the beam demo.
+
+
+Michel's original instructions
+==============================
+
+I got a Vision network that reproduces the beam pattern demo working:
+
+.. image:: vision_beam_pattern.png
+   :width: 400
+   :target: vision_beam_pattern.png
+   :align: center
+
+
+I created a package called beamPattern that provides the function run() in its
+__init__.py file.
+
+A subpackage beamPattern/VisionInterface provides Vision nodes for:
+
+- computing Elevation and Azimuth from a 3D vector
+
+- Reading .mat files
+
+- taking the results gathered from the engines and creating the output that a
+  single engine would have had produced
+
+The Mec node connect to a controller. In my network it was local but an furl
+can be specified to connect to a remote controller.
+
+The PRun Func node is from the IPython library of nodes. the import statement
+is used to get the run function from the beamPattern package and bu puting
+"run" in the function entry of this node we push this function to the engines.
+In addition to the node will create input ports for all arguments of the
+function being pushed (i.e. the run function)
+
+The second input port on PRun Fun take an integer specifying the rank of the
+argument we want to scatter. All other arguments will be pushed to the engines.
+
+The ElevAzim node has a 3D vector widget and computes the El And Az values
+which are passed into the PRun Fun node through the ports created
+automatically. The Mat node allows to select the .mat file, reads it and passed
+the data to the locdata port created automatically on PRun Func
+
+The calculation is executed in parallel, and the results are gathered and
+output.  Instead of having a list of 3 vectors we nd up with a list of n*3
+vectors where n is the number of engines. unpackDectorResults will turn it into
+a list of 3. We then plot x, y, and 10*log10(z)
+
+
+Installation
+------------
+
+- inflate beamPattern into the site-packages directory for the MGL tools.
+
+- place the appended IPythonNodes.py and StandardNodes.py into the Vision
+  package of the MGL tools.
+
+- place the appended items.py in the NetworkEditor package of the MGL tools
+
+- run vision for the network beamPat5_net.py::
+
+    vision beamPat5_net.py
+
+Once the network is running, you can:
+
+- double click on the MEC node and either use an emptty string for the furl to
+  connect to a local engine or cut and paste the furl to the engine you want to
+  use
+
+- click on the yellow lighting bold to run the network.
+
+- Try modifying the MAT file or change the Vector used top compute elevation
+  and Azimut.
+  
+
+Fernando's notes
+================
+
+- I had to install IPython and all its dependencies for the python used by the
+  MGL tools.
+
+- Then I had to install scipy 0.6.0 for it, since the nodes needed Scipy.  To
+  do this I sourced the mglenv.sh script and then ran::
+
+    python setup.py install --prefix=~/usr/opt/mgl
+
+
+Using PBS
+=========
+
+The following PBS script can be used to start the engines::
+
+    #PBS -N bgranger-ipython
+    #PBS -j oe
+    #PBS -l walltime=00:10:00
+    #PBS -l nodes=4:ppn=4
+
+    cd $PBS_O_WORKDIR
+    export PATH=$HOME/usr/local/bin
+    export PYTHONPATH=$HOME/usr/local/lib/python2.4/site-packages
+    /usr/local/bin/mpiexec -n 16 ipengine
+
+
+If this file is called ``ipython_pbs.sh``, then the in one login windows
+(i.e. on the head-node -- ``opt-login01.osc.edu``), run ``ipcontroller``. In
+another login window on the same node, run the above script::
+
+    qsub ipython_pbs.sh
+
+If you look at the first window, you will see some diagnostic output
+from ipcontroller. You can then get the furl from your own
+``~/.ipython/security`` directory and then connect to it remotely.
+
+You might need to set up an SSH tunnel, however; if this doesn't work as
+advertised::
+
+    ssh -L 10115:localhost:10105 bic
+
+
+Links to other resources
+========================
+
+- http://www.osc.edu/~unpingco/glenn_NewLynx2_Demo.avi
+
diff --git a/docs/sphinxext/docscrape.py b/docs/sphinxext/docscrape.py
new file mode 100644
index 0000000..f374b3d
--- /dev/null
+++ b/docs/sphinxext/docscrape.py
@@ -0,0 +1,497 @@
+"""Extract reference documentation from the NumPy source tree.
+
+"""
+
+import inspect
+import textwrap
+import re
+import pydoc
+from StringIO import StringIO
+from warnings import warn
+4
+class Reader(object):
+    """A line-based string reader.
+
+    """
+    def __init__(self, data):
+        """
+        Parameters
+        ----------
+        data : str
+           String with lines separated by '\n'.
+
+        """
+        if isinstance(data,list):
+            self._str = data
+        else:
+            self._str = data.split('\n') # store string as list of lines
+
+        self.reset()
+
+    def __getitem__(self, n):
+        return self._str[n]
+
+    def reset(self):
+        self._l = 0 # current line nr
+
+    def read(self):
+        if not self.eof():
+            out = self[self._l]
+            self._l += 1
+            return out
+        else:
+            return ''
+
+    def seek_next_non_empty_line(self):
+        for l in self[self._l:]:
+            if l.strip():
+                break
+            else:
+                self._l += 1
+
+    def eof(self):
+        return self._l >= len(self._str)
+
+    def read_to_condition(self, condition_func):
+        start = self._l
+        for line in self[start:]:
+            if condition_func(line):
+                return self[start:self._l]
+            self._l += 1
+            if self.eof():
+                return self[start:self._l+1]
+        return []
+
+    def read_to_next_empty_line(self):
+        self.seek_next_non_empty_line()
+        def is_empty(line):
+            return not line.strip()
+        return self.read_to_condition(is_empty)
+
+    def read_to_next_unindented_line(self):
+        def is_unindented(line):
+            return (line.strip() and (len(line.lstrip()) == len(line)))
+        return self.read_to_condition(is_unindented)
+
+    def peek(self,n=0):
+        if self._l + n < len(self._str):
+            return self[self._l + n]
+        else:
+            return ''
+
+    def is_empty(self):
+        return not ''.join(self._str).strip()
+
+
+class NumpyDocString(object):
+    def __init__(self,docstring):
+        docstring = textwrap.dedent(docstring).split('\n')
+
+        self._doc = Reader(docstring)
+        self._parsed_data = {
+            'Signature': '',
+            'Summary': [''],
+            'Extended Summary': [],
+            'Parameters': [],
+            'Returns': [],
+            'Raises': [],
+            'Warns': [],
+            'Other Parameters': [],
+            'Attributes': [],
+            'Methods': [],
+            'See Also': [],
+            'Notes': [],
+            'Warnings': [],
+            'References': '',
+            'Examples': '',
+            'index': {}
+            }
+
+        self._parse()
+
+    def __getitem__(self,key):
+        return self._parsed_data[key]
+
+    def __setitem__(self,key,val):
+        if not self._parsed_data.has_key(key):
+            warn("Unknown section %s" % key)
+        else:
+            self._parsed_data[key] = val
+
+    def _is_at_section(self):
+        self._doc.seek_next_non_empty_line()
+
+        if self._doc.eof():
+            return False
+
+        l1 = self._doc.peek().strip()  # e.g. Parameters
+
+        if l1.startswith('.. index::'):
+            return True
+
+        l2 = self._doc.peek(1).strip() #    ---------- or ==========
+        return l2.startswith('-'*len(l1)) or l2.startswith('='*len(l1))
+
+    def _strip(self,doc):
+        i = 0
+        j = 0
+        for i,line in enumerate(doc):
+            if line.strip(): break
+
+        for j,line in enumerate(doc[::-1]):
+            if line.strip(): break
+
+        return doc[i:len(doc)-j]
+
+    def _read_to_next_section(self):
+        section = self._doc.read_to_next_empty_line()
+
+        while not self._is_at_section() and not self._doc.eof():
+            if not self._doc.peek(-1).strip(): # previous line was empty
+                section += ['']
+
+            section += self._doc.read_to_next_empty_line()
+
+        return section
+
+    def _read_sections(self):
+        while not self._doc.eof():
+            data = self._read_to_next_section()
+            name = data[0].strip()
+
+            if name.startswith('..'): # index section
+                yield name, data[1:]
+            elif len(data) < 2:
+                yield StopIteration
+            else:
+                yield name, self._strip(data[2:])
+
+    def _parse_param_list(self,content):
+        r = Reader(content)
+        params = []
+        while not r.eof():
+            header = r.read().strip()
+            if ' : ' in header:
+                arg_name, arg_type = header.split(' : ')[:2]
+            else:
+                arg_name, arg_type = header, ''
+
+            desc = r.read_to_next_unindented_line()
+            desc = dedent_lines(desc)
+
+            params.append((arg_name,arg_type,desc))
+
+        return params
+
+    
+    _name_rgx = re.compile(r"^\s*(:(?P<role>\w+):`(?P<name>[a-zA-Z0-9_.-]+)`|"
+                           r" (?P<name2>[a-zA-Z0-9_.-]+))\s*", re.X)
+    def _parse_see_also(self, content):
+        """
+        func_name : Descriptive text
+            continued text
+        another_func_name : Descriptive text
+        func_name1, func_name2, :meth:`func_name`, func_name3
+
+        """
+        items = []
+
+        def parse_item_name(text):
+            """Match ':role:`name`' or 'name'"""
+            m = self._name_rgx.match(text)
+            if m:
+                g = m.groups()
+                if g[1] is None:
+                    return g[3], None
+                else:
+                    return g[2], g[1]
+            raise ValueError("%s is not a item name" % text)
+
+        def push_item(name, rest):
+            if not name:
+                return
+            name, role = parse_item_name(name)
+            items.append((name, list(rest), role))
+            del rest[:]
+
+        current_func = None
+        rest = []
+        
+        for line in content:
+            if not line.strip(): continue
+
+            m = self._name_rgx.match(line)
+            if m and line[m.end():].strip().startswith(':'):
+                push_item(current_func, rest)
+                current_func, line = line[:m.end()], line[m.end():]
+                rest = [line.split(':', 1)[1].strip()]
+                if not rest[0]:
+                    rest = []
+            elif not line.startswith(' '):
+                push_item(current_func, rest)
+                current_func = None
+                if ',' in line:
+                    for func in line.split(','):
+                        push_item(func, [])
+                elif line.strip():
+                    current_func = line
+            elif current_func is not None:
+                rest.append(line.strip())
+        push_item(current_func, rest)
+        return items
+
+    def _parse_index(self, section, content):
+        """
+        .. index: default
+           :refguide: something, else, and more
+
+        """
+        def strip_each_in(lst):
+            return [s.strip() for s in lst]
+
+        out = {}
+        section = section.split('::')
+        if len(section) > 1:
+            out['default'] = strip_each_in(section[1].split(','))[0]
+        for line in content:
+            line = line.split(':')
+            if len(line) > 2:
+                out[line[1]] = strip_each_in(line[2].split(','))
+        return out
+    
+    def _parse_summary(self):
+        """Grab signature (if given) and summary"""
+        if self._is_at_section():
+            return
+
+        summary = self._doc.read_to_next_empty_line()
+        summary_str = " ".join([s.strip() for s in summary]).strip()
+        if re.compile('^([\w., ]+=)?\s*[\w\.]+\(.*\)$').match(summary_str):
+            self['Signature'] = summary_str
+            if not self._is_at_section():
+                self['Summary'] = self._doc.read_to_next_empty_line()
+        else:
+            self['Summary'] = summary
+
+        if not self._is_at_section():
+            self['Extended Summary'] = self._read_to_next_section()
+    
+    def _parse(self):
+        self._doc.reset()
+        self._parse_summary()
+
+        for (section,content) in self._read_sections():
+            if not section.startswith('..'):
+                section = ' '.join([s.capitalize() for s in section.split(' ')])
+            if section in ('Parameters', 'Attributes', 'Methods',
+                           'Returns', 'Raises', 'Warns'):
+                self[section] = self._parse_param_list(content)
+            elif section.startswith('.. index::'):
+                self['index'] = self._parse_index(section, content)
+            elif section == 'See Also':
+                self['See Also'] = self._parse_see_also(content)
+            else:
+                self[section] = content
+
+    # string conversion routines
+
+    def _str_header(self, name, symbol='-'):
+        return [name, len(name)*symbol]
+
+    def _str_indent(self, doc, indent=4):
+        out = []
+        for line in doc:
+            out += [' '*indent + line]
+        return out
+
+    def _str_signature(self):
+        if self['Signature']:
+            return [self['Signature'].replace('*','\*')] + ['']
+        else:
+            return ['']
+
+    def _str_summary(self):
+        if self['Summary']:
+            return self['Summary'] + ['']
+        else:
+            return []
+
+    def _str_extended_summary(self):
+        if self['Extended Summary']:
+            return self['Extended Summary'] + ['']
+        else:
+            return []
+
+    def _str_param_list(self, name):
+        out = []
+        if self[name]:
+            out += self._str_header(name)
+            for param,param_type,desc in self[name]:
+                out += ['%s : %s' % (param, param_type)]
+                out += self._str_indent(desc)
+            out += ['']
+        return out
+
+    def _str_section(self, name):
+        out = []
+        if self[name]:
+            out += self._str_header(name)
+            out += self[name]
+            out += ['']
+        return out
+
+    def _str_see_also(self, func_role):
+        if not self['See Also']: return []
+        out = []
+        out += self._str_header("See Also")
+        last_had_desc = True
+        for func, desc, role in self['See Also']:
+            if role:
+                link = ':%s:`%s`' % (role, func)
+            elif func_role:
+                link = ':%s:`%s`' % (func_role, func)
+            else:
+                link = "`%s`_" % func
+            if desc or last_had_desc:
+                out += ['']
+                out += [link]
+            else:
+                out[-1] += ", %s" % link
+            if desc:
+                out += self._str_indent([' '.join(desc)])
+                last_had_desc = True
+            else:
+                last_had_desc = False
+        out += ['']
+        return out
+
+    def _str_index(self):
+        idx = self['index']
+        out = []
+        out += ['.. index:: %s' % idx.get('default','')]
+        for section, references in idx.iteritems():
+            if section == 'default':
+                continue
+            out += ['   :%s: %s' % (section, ', '.join(references))]
+        return out
+
+    def __str__(self, func_role=''):
+        out = []
+        out += self._str_signature()
+        out += self._str_summary()
+        out += self._str_extended_summary()
+        for param_list in ('Parameters','Returns','Raises'):
+            out += self._str_param_list(param_list)
+        out += self._str_section('Warnings')
+        out += self._str_see_also(func_role)
+        for s in ('Notes','References','Examples'):
+            out += self._str_section(s)
+        out += self._str_index()
+        return '\n'.join(out)
+
+
+def indent(str,indent=4):
+    indent_str = ' '*indent
+    if str is None:
+        return indent_str
+    lines = str.split('\n')
+    return '\n'.join(indent_str + l for l in lines)
+
+def dedent_lines(lines):
+    """Deindent a list of lines maximally"""
+    return textwrap.dedent("\n".join(lines)).split("\n")
+
+def header(text, style='-'):
+    return text + '\n' + style*len(text) + '\n'
+
+
+class FunctionDoc(NumpyDocString):
+    def __init__(self, func, role='func', doc=None):
+        self._f = func
+        self._role = role # e.g. "func" or "meth"
+        if doc is None:
+            doc = inspect.getdoc(func) or ''
+        try:
+            NumpyDocString.__init__(self, doc)
+        except ValueError, e:
+            print '*'*78
+            print "ERROR: '%s' while parsing `%s`" % (e, self._f)
+            print '*'*78
+            #print "Docstring follows:"
+            #print doclines
+            #print '='*78
+
+        if not self['Signature']:
+            func, func_name = self.get_func()
+            try:
+                # try to read signature
+                argspec = inspect.getargspec(func)
+                argspec = inspect.formatargspec(*argspec)
+                argspec = argspec.replace('*','\*')
+                signature = '%s%s' % (func_name, argspec)
+            except TypeError, e:
+                signature = '%s()' % func_name
+            self['Signature'] = signature
+
+    def get_func(self):
+        func_name = getattr(self._f, '__name__', self.__class__.__name__)
+        if inspect.isclass(self._f):
+            func = getattr(self._f, '__call__', self._f.__init__)
+        else:
+            func = self._f
+        return func, func_name
+            
+    def __str__(self):
+        out = ''
+
+        func, func_name = self.get_func()
+        signature = self['Signature'].replace('*', '\*')
+
+        roles = {'func': 'function',
+                 'meth': 'method'}
+
+        if self._role:
+            if not roles.has_key(self._role):
+                print "Warning: invalid role %s" % self._role
+            out += '.. %s:: %s\n    \n\n' % (roles.get(self._role,''),
+                                             func_name)
+
+        out += super(FunctionDoc, self).__str__(func_role=self._role)
+        return out
+
+
+class ClassDoc(NumpyDocString):
+    def __init__(self,cls,modulename='',func_doc=FunctionDoc,doc=None):
+        if not inspect.isclass(cls):
+            raise ValueError("Initialise using a class. Got %r" % cls)
+        self._cls = cls
+
+        if modulename and not modulename.endswith('.'):
+            modulename += '.'
+        self._mod = modulename
+        self._name = cls.__name__
+        self._func_doc = func_doc
+
+        if doc is None:
+            doc = pydoc.getdoc(cls)
+
+        NumpyDocString.__init__(self, doc)
+
+    @property
+    def methods(self):
+        return [name for name,func in inspect.getmembers(self._cls)
+                if not name.startswith('_') and callable(func)]
+
+    def __str__(self):
+        out = ''
+        out += super(ClassDoc, self).__str__()
+        out += "\n\n"
+
+        #for m in self.methods:
+        #    print "Parsing `%s`" % m
+        #    out += str(self._func_doc(getattr(self._cls,m), 'meth')) + '\n\n'
+        #    out += '.. index::\n   single: %s; %s\n\n' % (self._name, m)
+
+        return out
+
+
diff --git a/docs/sphinxext/docscrape_sphinx.py b/docs/sphinxext/docscrape_sphinx.py
new file mode 100644
index 0000000..77ed271
--- /dev/null
+++ b/docs/sphinxext/docscrape_sphinx.py
@@ -0,0 +1,136 @@
+import re, inspect, textwrap, pydoc
+from docscrape import NumpyDocString, FunctionDoc, ClassDoc
+
+class SphinxDocString(NumpyDocString):
+    # string conversion routines
+    def _str_header(self, name, symbol='`'):
+        return ['.. rubric:: ' + name, '']
+
+    def _str_field_list(self, name):
+        return [':' + name + ':']
+
+    def _str_indent(self, doc, indent=4):
+        out = []
+        for line in doc:
+            out += [' '*indent + line]
+        return out
+
+    def _str_signature(self):
+        return ['']
+        if self['Signature']:
+            return ['``%s``' % self['Signature']] + ['']
+        else:
+            return ['']
+
+    def _str_summary(self):
+        return self['Summary'] + ['']
+
+    def _str_extended_summary(self):
+        return self['Extended Summary'] + ['']
+
+    def _str_param_list(self, name):
+        out = []
+        if self[name]:
+            out += self._str_field_list(name)
+            out += ['']
+            for param,param_type,desc in self[name]:
+                out += self._str_indent(['**%s** : %s' % (param.strip(),
+                                                          param_type)])
+                out += ['']
+                out += self._str_indent(desc,8)
+                out += ['']
+        return out
+
+    def _str_section(self, name):
+        out = []
+        if self[name]:
+            out += self._str_header(name)
+            out += ['']
+            content = textwrap.dedent("\n".join(self[name])).split("\n")
+            out += content
+            out += ['']
+        return out
+
+    def _str_see_also(self, func_role):
+        out = []
+        if self['See Also']:
+            see_also = super(SphinxDocString, self)._str_see_also(func_role)
+            out = ['.. seealso::', '']
+            out += self._str_indent(see_also[2:])
+        return out
+
+    def _str_warnings(self):
+        out = []
+        if self['Warnings']:
+            out = ['.. warning::', '']
+            out += self._str_indent(self['Warnings'])
+        return out
+
+    def _str_index(self):
+        idx = self['index']
+        out = []
+        if len(idx) == 0:
+            return out
+
+        out += ['.. index:: %s' % idx.get('default','')]
+        for section, references in idx.iteritems():
+            if section == 'default':
+                continue
+            elif section == 'refguide':
+                out += ['   single: %s' % (', '.join(references))]
+            else:
+                out += ['   %s: %s' % (section, ','.join(references))]
+        return out
+
+    def _str_references(self):
+        out = []
+        if self['References']:
+            out += self._str_header('References')
+            if isinstance(self['References'], str):
+                self['References'] = [self['References']]
+            out.extend(self['References'])
+            out += ['']
+        return out
+
+    def __str__(self, indent=0, func_role="obj"):
+        out = []
+        out += self._str_signature()
+        out += self._str_index() + ['']
+        out += self._str_summary()
+        out += self._str_extended_summary()
+        for param_list in ('Parameters', 'Attributes', 'Methods',
+                           'Returns','Raises'):
+            out += self._str_param_list(param_list)
+        out += self._str_warnings()
+        out += self._str_see_also(func_role)
+        out += self._str_section('Notes')
+        out += self._str_references()
+        out += self._str_section('Examples')
+        out = self._str_indent(out,indent)
+        return '\n'.join(out)
+
+class SphinxFunctionDoc(SphinxDocString, FunctionDoc):
+    pass
+
+class SphinxClassDoc(SphinxDocString, ClassDoc):
+    pass
+
+def get_doc_object(obj, what=None, doc=None):
+    if what is None:
+        if inspect.isclass(obj):
+            what = 'class'
+        elif inspect.ismodule(obj):
+            what = 'module'
+        elif callable(obj):
+            what = 'function'
+        else:
+            what = 'object'
+    if what == 'class':
+        return SphinxClassDoc(obj, '', func_doc=SphinxFunctionDoc, doc=doc)
+    elif what in ('function', 'method'):
+        return SphinxFunctionDoc(obj, '', doc=doc)
+    else:
+        if doc is None:
+            doc = pydoc.getdoc(obj)
+        return SphinxDocString(doc)
+
diff --git a/docs/sphinxext/inheritance_diagram.py b/docs/sphinxext/inheritance_diagram.py
index 213abf8..407fc13 100644
--- a/docs/sphinxext/inheritance_diagram.py
+++ b/docs/sphinxext/inheritance_diagram.py
@@ -39,11 +39,20 @@ except ImportError:
     from md5 import md5
 
 from docutils.nodes import Body, Element
-from docutils.writers.html4css1 import HTMLTranslator
-from sphinx.latexwriter import LaTeXTranslator
 from docutils.parsers.rst import directives
 from sphinx.roles import xfileref_role
 
+def my_import(name):
+    """Module importer - taken from the python documentation.
+
+    This function allows importing names with dots in them."""
+    
+    mod = __import__(name)
+    components = name.split('.')
+    for comp in components[1:]:
+        mod = getattr(mod, comp)
+    return mod
+
 class DotException(Exception):
     pass
 
@@ -84,11 +93,15 @@ class InheritanceGraph(object):
         path = (path and path.rstrip('.'))
         if not path:
             path = base
-        if not path:
-            raise ValueError(
-                "Invalid class or module '%s' specified for inheritance diagram" % name)
         try:
             module = __import__(path, None, None, [])
+            # We must do an import of the fully qualified name.  Otherwise if a
+            # subpackage 'a.b' is requested where 'import a' does NOT provide
+            # 'a.b' automatically, then 'a.b' will not be found below.  This
+            # second call will force the equivalent of 'import a.b' to happen
+            # after the top-level import above.
+            my_import(fullname)
+            
         except ImportError:
             raise ValueError(
                 "Could not import class or module '%s' specified for inheritance diagram" % name)
@@ -277,12 +290,16 @@ class inheritance_diagram(Body, Element):
     """
     pass
 
-def inheritance_diagram_directive_run(class_names, options, state):
+def inheritance_diagram_directive(name, arguments, options, content, lineno,
+                                  content_offset, block_text, state,
+                                  state_machine):
     """
     Run when the inheritance_diagram directive is first encountered.
     """
     node = inheritance_diagram()
 
+    class_names = arguments
+
     # Create a graph starting with the list of classes
     graph = InheritanceGraph(class_names)
 
@@ -315,15 +332,12 @@ def html_output_graph(self, node):
 
     graph_hash = get_graph_hash(node)
     name = "inheritance%s" % graph_hash
-    png_path = os.path.join('_static', name + ".png")
-
-    path = '_static'
-    source = self.document.attributes['source']
-    count = source.split('/doc/')[-1].count('/')
-    for i in range(count):
-        if os.path.exists(path): break
-        path = '../'+path
-    path = '../'+path #specifically added for matplotlib
+    path = '_images'
+    dest_path = os.path.join(setup.app.builder.outdir, path)
+    if not os.path.exists(dest_path):
+        os.makedirs(dest_path)
+    png_path = os.path.join(dest_path, name + ".png")
+    path = setup.app.builder.imgpath
 
     # Create a mapping from fully-qualified class names to URLs.
     urls = {}
@@ -349,11 +363,14 @@ def latex_output_graph(self, node):
 
     graph_hash = get_graph_hash(node)
     name = "inheritance%s" % graph_hash
-    pdf_path = os.path.join('_static', name + ".pdf")
+    dest_path = os.path.abspath(os.path.join(setup.app.builder.outdir, '_images'))
+    if not os.path.exists(dest_path):
+        os.makedirs(dest_path)
+    pdf_path = os.path.abspath(os.path.join(dest_path, name + ".pdf"))
 
     graph.run_dot(['-Tpdf', '-o%s' % pdf_path],
                   name, parts, graph_options={'size': '"6.0,6.0"'})
-    return '\\includegraphics{../../%s}' % pdf_path
+    return '\n\\includegraphics{%s}\n\n' % pdf_path
 
 def visit_inheritance_diagram(inner_func):
     """
@@ -377,47 +394,14 @@ def visit_inheritance_diagram(inner_func):
 def do_nothing(self, node):
     pass
 
-options_spec = {
-    'parts': directives.nonnegative_int
-    }
-
-# Deal with the old and new way of registering directives
-try:
-    from docutils.parsers.rst import Directive
-except ImportError:
-    from docutils.parsers.rst.directives import _directives
-    def inheritance_diagram_directive(name, arguments, options, content, lineno,
-                                      content_offset, block_text, state,
-                                      state_machine):
-        return inheritance_diagram_directive_run(arguments, options, state)
-    inheritance_diagram_directive.__doc__ = __doc__
-    inheritance_diagram_directive.arguments = (1, 100, 0)
-    inheritance_diagram_directive.options = options_spec
-    inheritance_diagram_directive.content = 0
-    _directives['inheritance-diagram'] = inheritance_diagram_directive
-else:
-    class inheritance_diagram_directive(Directive):
-        has_content = False
-        required_arguments = 1
-        optional_arguments = 100
-        final_argument_whitespace = False
-        option_spec = options_spec
-
-        def run(self):
-            return inheritance_diagram_directive_run(
-                self.arguments, self.options, self.state)
-    inheritance_diagram_directive.__doc__ = __doc__
-
-    directives.register_directive('inheritance-diagram',
-                                  inheritance_diagram_directive)
-
 def setup(app):
-    app.add_node(inheritance_diagram)
-
-    HTMLTranslator.visit_inheritance_diagram = \
-        visit_inheritance_diagram(html_output_graph)
-    HTMLTranslator.depart_inheritance_diagram = do_nothing
-
-    LaTeXTranslator.visit_inheritance_diagram = \
-        visit_inheritance_diagram(latex_output_graph)
-    LaTeXTranslator.depart_inheritance_diagram = do_nothing
+    setup.app = app
+    setup.confdir = app.confdir
+
+    app.add_node(
+        inheritance_diagram,
+        latex=(visit_inheritance_diagram(latex_output_graph), do_nothing),
+        html=(visit_inheritance_diagram(html_output_graph), do_nothing))
+    app.add_directive(
+        'inheritance-diagram', inheritance_diagram_directive,
+        False, (1, 100, 0), parts = directives.nonnegative_int)
diff --git a/docs/sphinxext/ipython_console_highlighting.py b/docs/sphinxext/ipython_console_highlighting.py
index 4f0104d..00f9abd 100644
--- a/docs/sphinxext/ipython_console_highlighting.py
+++ b/docs/sphinxext/ipython_console_highlighting.py
@@ -1,18 +1,32 @@
+"""reST directive for syntax-highlighting ipython interactive sessions.
+"""
+
+#-----------------------------------------------------------------------------
+# Needed modules
+
+# Standard library
+import re
+
+# Third party
 from pygments.lexer import Lexer, do_insertions
-from pygments.lexers.agile import PythonConsoleLexer, PythonLexer, \
-    PythonTracebackLexer
+from pygments.lexers.agile import (PythonConsoleLexer, PythonLexer, 
+                                   PythonTracebackLexer)
 from pygments.token import Comment, Generic
+
 from sphinx import highlighting
-import re
 
+
+#-----------------------------------------------------------------------------
+# Global constants
 line_re = re.compile('.*?\n')
 
+#-----------------------------------------------------------------------------
+# Code begins - classes and functions
+
 class IPythonConsoleLexer(Lexer):
     """
     For IPython console output or doctests, such as:
 
-    Tracebacks are not currently supported.
-
     .. sourcecode:: ipython
 
       In [1]: a = 'foo'
@@ -24,7 +38,14 @@ class IPythonConsoleLexer(Lexer):
       foo
 
       In [4]: 1 / 0
+
+    Notes:
+
+      - Tracebacks are not currently supported.
+
+      - It assumes the default IPython prompts, not customized ones.
     """
+    
     name = 'IPython console session'
     aliases = ['ipython']
     mimetypes = ['text/x-ipython-console']
@@ -72,4 +93,6 @@ class IPythonConsoleLexer(Lexer):
                                       pylexer.get_tokens_unprocessed(curcode)):
                 yield item
 
+#-----------------------------------------------------------------------------
+# Register the extension as a valid pygments lexer
 highlighting.lexers['ipython'] = IPythonConsoleLexer()
diff --git a/docs/sphinxext/numpydoc.py b/docs/sphinxext/numpydoc.py
new file mode 100644
index 0000000..ff6c44c
--- /dev/null
+++ b/docs/sphinxext/numpydoc.py
@@ -0,0 +1,116 @@
+"""
+========
+numpydoc
+========
+
+Sphinx extension that handles docstrings in the Numpy standard format. [1]
+
+It will:
+
+- Convert Parameters etc. sections to field lists.
+- Convert See Also section to a See also entry.
+- Renumber references.
+- Extract the signature from the docstring, if it can't be determined otherwise.
+
+.. [1] http://projects.scipy.org/scipy/numpy/wiki/CodingStyleGuidelines#docstring-standard
+
+"""
+
+import os, re, pydoc
+from docscrape_sphinx import get_doc_object, SphinxDocString
+import inspect
+
+def mangle_docstrings(app, what, name, obj, options, lines,
+                      reference_offset=[0]):
+    if what == 'module':
+        # Strip top title
+        title_re = re.compile(r'^\s*[#*=]{4,}\n[a-z0-9 -]+\n[#*=]{4,}\s*',
+                              re.I|re.S)
+        lines[:] = title_re.sub('', "\n".join(lines)).split("\n")
+    else:
+        doc = get_doc_object(obj, what, "\n".join(lines))
+        lines[:] = str(doc).split("\n")
+
+    if app.config.numpydoc_edit_link and hasattr(obj, '__name__') and \
+           obj.__name__:
+        if hasattr(obj, '__module__'):
+            v = dict(full_name="%s.%s" % (obj.__module__, obj.__name__))
+        else:
+            v = dict(full_name=obj.__name__)
+        lines += ['', '.. htmlonly::', '']
+        lines += ['    %s' % x for x in
+                  (app.config.numpydoc_edit_link % v).split("\n")]
+
+    # replace reference numbers so that there are no duplicates
+    references = []
+    for l in lines:
+        l = l.strip()
+        if l.startswith('.. ['):
+            try:
+                references.append(int(l[len('.. ['):l.index(']')]))
+            except ValueError:
+                print "WARNING: invalid reference in %s docstring" % name
+
+    # Start renaming from the biggest number, otherwise we may
+    # overwrite references.
+    references.sort()
+    if references:
+        for i, line in enumerate(lines):
+            for r in references:
+                new_r = reference_offset[0] + r
+                lines[i] = lines[i].replace('[%d]_' % r,
+                                            '[%d]_' % new_r)
+                lines[i] = lines[i].replace('.. [%d]' % r,
+                                            '.. [%d]' % new_r)
+
+    reference_offset[0] += len(references)
+
+def mangle_signature(app, what, name, obj, options, sig, retann):
+    # Do not try to inspect classes that don't define `__init__`
+    if (inspect.isclass(obj) and
+        'initializes x; see ' in pydoc.getdoc(obj.__init__)):
+        return '', ''
+
+    if not (callable(obj) or hasattr(obj, '__argspec_is_invalid_')): return
+    if not hasattr(obj, '__doc__'): return
+
+    doc = SphinxDocString(pydoc.getdoc(obj))
+    if doc['Signature']:
+        sig = re.sub("^[^(]*", "", doc['Signature'])
+        return sig, ''
+
+def initialize(app):
+    try:
+        app.connect('autodoc-process-signature', mangle_signature)
+    except:
+        monkeypatch_sphinx_ext_autodoc()
+
+def setup(app, get_doc_object_=get_doc_object):
+    global get_doc_object
+    get_doc_object = get_doc_object_
+    
+    app.connect('autodoc-process-docstring', mangle_docstrings)
+    app.connect('builder-inited', initialize)
+    app.add_config_value('numpydoc_edit_link', None, True)
+
+#------------------------------------------------------------------------------
+# Monkeypatch sphinx.ext.autodoc to accept argspecless autodocs (Sphinx < 0.5)
+#------------------------------------------------------------------------------
+
+def monkeypatch_sphinx_ext_autodoc():
+    global _original_format_signature
+    import sphinx.ext.autodoc
+
+    if sphinx.ext.autodoc.format_signature is our_format_signature:
+        return
+
+    print "[numpydoc] Monkeypatching sphinx.ext.autodoc ..."
+    _original_format_signature = sphinx.ext.autodoc.format_signature
+    sphinx.ext.autodoc.format_signature = our_format_signature
+
+def our_format_signature(what, obj):
+    r = mangle_signature(None, what, None, obj, None, None, None)
+    if r is not None:
+        return r[0]
+    else:
+        return _original_format_signature(what, obj)