Skip to main content

A library for parsing and rendering Fountain screenplays.

Project description

Fountain is a plain text markup language for screenwriting. Jouvence is a Python package for parsing and rendering Fountain documents.

Jouvence supports:

  • Most of the Fountain specification (see limitations below).
  • Rendering to HTML and terminals.

Installation

As with many Python packages, it’s recommended that you use virtualenv, but since Jouvence doesn’t have many dependencies, you should be fine.

You can install Jouvence the usual way:

pip install jouvence

If you want to test that it works, you can feed it a Fountain screenplay and see if it prints it nicely in your terminal:

jouvence <path-to-fountain-file>

You should then see the Fountain file rendered with colored and indented styles.

Usage

The Jouvence API goes pretty much like this:

from jouvence.parser import JouvenceParser
from jouvence.html import HtmlDocumentRenderer

parser = JouvenceParser()
document = parser.parse(path_to_file)
renderer = HtmlDocumentRenderer()
with open(path_to_output, 'w') as fp:
  renderer.render_doc(document, fp)

Limitations

Jouvence doesn’t support the complete Fountain syntax yet. The following things are not implemented:

  • Dual dialogue
  • Proper Unicode support (although Fountain’s spec greatly assumes English screenplays, sadly).

Project details


Release history Release notifications

This version
History Node

0.4.0

History Node

0.3.0

History Node

0.2.1

History Node

0.2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
Jouvence-0.4.0.tar.gz (1.9 MB) Copy SHA256 hash SHA256 Source None Jan 17, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page