Skip to main content

Knitr preprocessing for Flask-FlatPages

Project description

https://travis-ci.org/fhirschmann/Flask-FlatPages-Knitr.png?branch=master https://badge.fury.io/py/Flask-FlatPages-Knitr.png

Flask-FlatPages-Knitr preprocesses a Flask FlatPage using knitr such that code chunks are evaluated before the next step in the rendering process occurs.

Quickstart

First, install the knitr R package:

Rscript -e "install.packages('knitr')"

Right now, Flask-FlatPages-Knitr requires at least version 0.6 of Flat-FlatPages, which has not been released yet. Hence, you’ll have to install it from Github:

pip install git+git://github.com/SimonSapin/Flask-FlatPages/

Second, install Flask-FlatPages-Knitr from the Python Package Index:

pip install Flask-FlatPages-Knitr

Finally, you can simply add Flask-FlatPages-Knitr to your app:

from flask import Flask
from flask_flatpages import FlatPages
from flask_flatpages_knitr import FlatPagesKnitr

app = Flask(__name__)
app.config.from_object(__name__)

pages = FlatPages(app)
FlatPagesKnitr(app)

By default, FLATPAGES_HTML_RENDERER will be reused, which defaults to a Markdown implementation for Python. For more advanced Markdown rendering, Flask-FlatPages-Pandoc is recommended:

from flask_flatpages_pandoc import FlatPagesPandoc

FLATPAGES_EXTENSION = ".Rmd"

pages = FlatPages(app)
FlatPagesPandoc("markdown", app, ["--mathjax"], pre_render=True)
FlatPagesKnitr(app)

Project details


Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page