##// END OF EJS Templates
back to dev
back to dev

File last commit:

r27288:33f5b346
r28266:a09873dc
Show More
payloadpage.py
51 lines | 1.4 KiB | text/x-python | PythonLexer
Brian Granger
Paging using payloads now works.
r2830 # encoding: utf-8
MinRK
pager payload is a mime-bundle
r16586 """A payload based version of page."""
Brian Granger
Paging using payloads now works.
r2830
MinRK
pager payload is a mime-bundle
r16586 # Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
Brian Granger
Paging using payloads now works.
r2830
Min RK
add InteractiveShell.display_page config...
r19387 import warnings
MinRK
pager payload is a mime-bundle
r16586 from IPython.core.getipython import get_ipython
Brian Granger
Paging using payloads now works.
r2830
MinRK
pager payload is a mime-bundle
r16586 def page(strng, start=0, screen_lines=0, pager_cmd=None):
Brian Granger
Paging using payloads now works.
r2830 """Print a string, piping through a pager.
This version ignores the screen_lines and pager_cmd arguments and uses
IPython's payload system instead.
Fernando Perez
Provide html support for page() in the payload version....
r3011
Parameters
----------
MinRK
pager payload is a mime-bundle
r16586 strng : str or mime-dict
Matthias Bussonnier
some docstring reformatting and fixing
r27288 Text to page, or a mime-type keyed dict of already formatted data.
Fernando Perez
Provide html support for page() in the payload version....
r3011 start : int
Matthias Bussonnier
some docstring reformatting and fixing
r27288 Starting line at which to place the display.
Brian Granger
Paging using payloads now works.
r2830 """
# Some routines may auto-compute start offsets incorrectly and pass a
# negative value. Offset to 0 for robustness.
start = max(0, start)
MinRK
pager payload is a mime-bundle
r16586 shell = get_ipython()
if isinstance(strng, dict):
data = strng
else:
data = {'text/plain' : strng}
Brian Granger
Paging using payloads now works.
r2830 payload = dict(
MinRK
update payload source...
r11839 source='page',
MinRK
pager payload is a mime-bundle
r16586 data=data,
start=start,
Fernando Perez
Provide html support for page() in the payload version....
r3011 )
Brian Granger
Paging using payloads now works.
r2830 shell.payload_manager.write_payload(payload)
Fernando Perez
Provide html support for page() in the payload version....
r3011
Brian Granger
Paging using payloads now works.
r2830 def install_payload_page():
Min RK
add InteractiveShell.display_page config...
r19387 """DEPRECATED, use show_in_pager hook
Matthias Bussonnier
some docstring reformatting and fixing
r27288
Min RK
add InteractiveShell.display_page config...
r19387 Install this version of page as IPython.core.page.page.
"""
warnings.warn("""install_payload_page is deprecated.
Use `ip.set_hook('show_in_pager, page.as_hook(payloadpage.page))`
""")
Brian Granger
Paging using payloads now works.
r2830 from IPython.core import page as corepage
corepage.page = page