annotate README.rst @ 6:486c2349598e

Add README, LICENSE, and requirements files.
author Ludovic Chabant <ludovic@chabant.com>
date Tue, 03 Jan 2017 16:41:02 -0800
parents
children ee741bbe96a8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 ########
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 FONTAINE
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 ########
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
5
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7 `Fountain`_ is a plain text markup language for screenwriting. Fontaine
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
8 is a Python package for parsing and rendering Fountain documents.
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
9
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10 Fontaine supports:
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
12 * Most of the Fountain specification (see limitations below).
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13 * Rendering to HTML and terminals.
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
15 .. _fountain: http://fountain.io/
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
16
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
17
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18 Installation
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
19 ============
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
20
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
21 As with many Python packages, it's recommended that you use `virtualenv`_,
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22 but since Fontaine doesn't have many dependencies, you should be fine.
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
23
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
24 You can install Fontaine the usual way::
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
25
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
26 pip install fontaine
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
27
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
28 If you want to test that it works, you can feed it a Fountain screenplay and
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
29 see if it prints it nicely in your terminal::
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
30
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
31 fontaine <path-to-fountain-file>
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
32
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
33 You should then see the Fountain file rendered with colored and indented
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
34 styles.
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
35
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
36 .. _virtualenv: https://virtualenv.pypa.io/en/stable/
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
37
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
38
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
39 Usage
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
40 =====
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
41
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
42 The Fontaine API goes pretty much like this::
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
44 from fontaine.parser import FontaineParser
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
45 from fontaine.html import HtmlDocumentRenderer
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
46
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
47 parser = FontaineParser()
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
48 document = parser.parse(path_to_file)
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
49 renderer = HtmlDocumentRenderer()
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
50 markup = renderer.render_doc(document)
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
51 return markup
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
52
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
53
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
54 Limitations
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
55 ===========
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
56
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
57 Fontaine doesn't support the complete Fountain syntax yet. The following things
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
58 are not implemented yet:
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
59
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
60 * Dual dialogue
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
61 * Notes
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
62 * Boneyards
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
63 * Sections and synopses
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
64
486c2349598e Add README, LICENSE, and requirements files.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
65