magical-magic

Simple reusable magics.


Keywords
IPython, Magic, Jupyter
License
BSD-3-Clause
Install
pip install magical-magic==0.0.9

Documentation

magical-magic

Dead simple reusable IPython magics.

Installation

pip install magical-magic

Basic Usage

import magical
env = magical.register_jinja2_magic() # returns a jinja environment
magical.register_mistune_magic(escape=False)
magical.register_yaml_magic()
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
data = {'🐮': 'moo', '🐑': 'bah', '🔥': 'burn'}
%%jinja2
# Jinja Cell Magics

`%%jinja2` inserts data from the notebook into the template.

## An example of a list

{% for key in data %}* {{key}} - __{{data[key]}}__
{% endfor %}

Jinja Cell Magics

%%jinja2 inserts data from the notebook into the template.

An example of a list

  • 🐮 - moo
  • 🔥 - burn
  • 🐑 - bah

%%mistune
## Mistune Cell Magics

`%%mistune` uses a pure Python markdown parser.  For convenience, jinja templates can be used to
tell us about the length of `data` is {{data.__len__()}}.

Development

Running the Build and Tests

pip install -r requirements-dev.txt
python setup.py develop
watchmedo tricks tricks.yaml

The watchmedo script will convert your notebooks to scripts and html files. py.test-ipynb will test all notebooks matching test-*.ipynb.

Running the docs

jekyll serve docs -wit

Docs are hosted at http://localhost:4000/magical-magic/.

License

magical-magic is released as free software under the BSD 3-Clause license.