##// END OF EJS Templates
Change absolute imports to relative imports to facilitate processes embedding kernel or debugger
Change absolute imports to relative imports to facilitate processes embedding kernel or debugger

File last commit:

r24112:2578fa7b
r25227:390d0400
Show More
display.py
82 lines | 2.7 KiB | text/x-python | PythonLexer
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 """Simple magics for display formats"""
#-----------------------------------------------------------------------------
# Copyright (c) 2012 The IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
# Our own packages
jus1tin
Added `Markdown` to imports...
r23761 from IPython.core.display import display, Javascript, Latex, SVG, HTML, Markdown
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 from IPython.core.magic import (
Thomas Kluyver
Remove unused imports
r9399 Magics, magics_class, cell_magic
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 )
Sjoerd de Vries
added --isolated option for %%html magic
r24112 from IPython.core import magic_arguments
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946
#-----------------------------------------------------------------------------
# Magic implementation classes
#-----------------------------------------------------------------------------
@magics_class
class DisplayMagics(Magics):
"""Magics for displaying various output types with literals
Jonathan Frederic
Add %%js alias for %%javascript
r22307
Defines javascript/latex/svg/html cell magics for writing
Mikhail Korobov
fix DisplayMagics.html docstring
r10054 blocks in those languages, to be rendered in the frontend.
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 """
Jonathan Frederic
Add %%js alias for %%javascript
r22307
@cell_magic
def js(self, line, cell):
Matthias Bussonnier
Precise that %%js is an alias of %%javascript
r22310 """Run the cell block of Javascript code
Sjoerd de Vries
added --isolated option for %%html magic
r24112
Matthias Bussonnier
Precise that %%js is an alias of %%javascript
r22310 Alias of `%%javascript`
"""
Jonathan Frederic
Add %%js alias for %%javascript
r22307 self.javascript(line, cell)
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 @cell_magic
def javascript(self, line, cell):
"""Run the cell block of Javascript code"""
display(Javascript(cell))
Jonathan Frederic
Add %%js alias for %%javascript
r22307
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 @cell_magic
def latex(self, line, cell):
Jonathan Frederic
Better document the %%latex magic latex support.
r21735 """Render the cell as a block of latex
Jonathan Frederic
Add %%js alias for %%javascript
r22307
Jonathan Frederic
Clarify that the MathJax comment is Notebook specific.
r21738 The subset of latex which is support depends on the implementation in
Jonathan Frederic
Add %%js alias for %%javascript
r22307 the client. In the Jupyter Notebook, this magic only renders the subset
of latex defined by MathJax
Jonathan Frederic
Better document the %%latex magic latex support.
r21735 [here](https://docs.mathjax.org/en/v2.5-latest/tex.html)."""
MinRK
add %%javascript, %%svg, and %%latex display magics...
r7946 display(Latex(cell))
@cell_magic
def svg(self, line, cell):
"""Render the cell as an SVG literal"""
display(SVG(cell))
MinRK
add %%html cell magic
r9999
Sjoerd de Vries
added --isolated option for %%html magic
r24112 @magic_arguments.magic_arguments()
@magic_arguments.argument(
'--isolated', action='store_true', default=False,
help="""Annotate the cell as 'isolated'.
Isolated cells are rendered inside their own <iframe> tag"""
)
MinRK
add %%html cell magic
r9999 @cell_magic
def html(self, line, cell):
Mikhail Korobov
fix DisplayMagics.html docstring
r10054 """Render the cell as a block of HTML"""
Sjoerd de Vries
added --isolated option for %%html magic
r24112 args = magic_arguments.parse_argstring(self.html, line)
html = HTML(cell)
if args.isolated:
display(html, metadata={'text/html':{'isolated':True}})
else:
display(html)
@cell_magic
Matti Remes
add markdown cell magic function...
r23656 def markdown(self, line, cell):
"""Render the cell as Markdown text block"""
display(Markdown(cell))