##// END OF EJS Templates
- new doctest_mode magic to toggle doctest pasting/prompts....
- new doctest_mode magic to toggle doctest pasting/prompts. - extend to_user_ns to accept a dict as an argument. - small fixes to scipy profile

File last commit:

r763:3b7d7e50
r763:3b7d7e50
Show More
ipy_profile_doctest.py
48 lines | 1.5 KiB | text/x-python | PythonLexer
/ IPython / Extensions / ipy_profile_doctest.py
fperez
- New profile with doctest support (two way: for generating doctests and for...
r750 """Config file for 'doctest' profile.
This profile modifies the prompts to be the standard Python ones, so that you
can generate easily doctests from an IPython session.
But more importantly, it enables pasting of code with '>>>' prompts and
arbitrary initial whitespace, as is typical of doctests in reST files and
docstrings. This allows you to easily re-run existing doctests and iteratively
work on them as part of your development workflow.
The exception mode is also set to 'plain' so the generated exceptions are as
similar as possible to the default Python ones, for inclusion in doctests."""
# get various stuff that are there for historical / familiarity reasons
import ipy_legacy
from IPython import ipapi
from IPython.Extensions import InterpreterPasteInput
def main():
ip = ipapi.get()
o = ip.options
# Set the prompts similar to the defaults
o.prompt_in1 = '>>> '
o.prompt_in2 = '... '
o.prompt_out = ''
# No separation between successive inputs
o.separate_in = ''
fperez
Small fix to '?', more doctest-compliant profile.
r762 o.separate_out = ''
# But add a blank line after any output, to help separate doctests from
# each other. This is needed by doctest to distinguish each test from the
# next.
o.separate_out2 = '\n'
fperez
- New profile with doctest support (two way: for generating doctests and for...
r750
# Disable pprint, so that outputs are printed as similarly to standard
# python as possible
fperez
Small fix to '?', more doctest-compliant profile.
r762 o.pprint = False
fperez
- New profile with doctest support (two way: for generating doctests and for...
r750
# Use plain exceptions, to also resemble normal pyhton.
o.xmode = 'plain'
fperez
- new doctest_mode magic to toggle doctest pasting/prompts....
r763 # Store the activity flag in the metadata bag from the running shell
ip.IP.meta.doctest_mode = True
fperez
- New profile with doctest support (two way: for generating doctests and for...
r750 main()