First off I’ll admit I’m in no way a screenwriter, or maybe any kind of writer. I write fanfic – mainly Arcane, Doctor Who, and Star Trek – for my own enjoyment. It’s not really good enough to show anyone yet.
Second, let me say I like Fountain. I tried using Scrivener to write screenplay fanfic, but it seemed like overkill. (Maybe if I write that novel …) Then my Macs died, one by one, and I couldn’t run it any more. (I did dig around the .scriv file and rescue my text, though.) So I tried Markdown, but the formatting never looked right. Fountain, however, reimagines Markdown specifically for screenwriters.
Third, though, I’m going to say what all screenwriters dread: I have some notes.
Newlines
Unlike some markup languages, Fountain takes every carriage return as intent.
– Fountain spec (source)
Again I’m not a screenwriter, so I’ll assume that’s a very important principle
to keep. However, I write in a very primitive text editor (vi
) so
the performance on my underpowered laptop doesn’t go into the toilet.
It doesn’t do word-wrap. (Or if it does, I haven’t figured out how.)
More importantly(?) I’ve gotten into the habit of putting one sentence on a line, or even one phrase or clause per line, so that I can move text around after cutting the first pass of one of my stories. When I ran that through a Python-based Fountain processor I downloaded recently, the result was awful. (Unexpectedly since I didn’t read the line above until it was too late.) Something like this:
ALICE
I wonder how many times I've fallen by this time?
I must be getting somewhere near the centre of the earth.
Let's see:
that would be four thousand miles down I think ---
turns into something like this:
ALICE
I wonder how many times I've fallen by this
time?
I must be getting somewhere near the centre
of the earth.
Let's see:
that would be four thousand miles down I think
---
(The processor I was using looked slightly worse, since it interpreted each line break in dialogue as a paragraph.)
Since I may end up writing my own parser, I thought I could put in an optional syntax for people like me. I have two ideas:
-
Any line ending in
\
(before the carriage return/newline) is continued to the next line. -
Any line preceded by
>
wraps text with the following line, unless it’s blank (whitespace or simply a newline).
Thus if I write:
ALICE
I wonder how many times I've fallen by this time? \
I must be getting somewhere near the centre of the earth. \
Let's see: \
that would be four thousand miles down I think ---
or:
ALICE
> I wonder how many times I've fallen by this time?
> I must be getting somewhere near the centre of the earth.
> Let's see:
> that would be four thousand miles down I think ---
I would get
ALICE
I wonder how many times I've fallen by this
time? I must be getting somewhere near the
centre of the earth. Let's see: that would be
four thousand miles down I think ---
I favor the first option, since >THE END<
centers “THE END” on a line,
and the second option looks like a Markdown blockquote. (OTOH, a >
at the start of text in YAML wraps all following lines.)
Whitespace
Speaking of whitespace, though, the part about two spaces continuing dialogue also bothers me. This may seem strange from someone trying to relearn Python, but using whitespace to show structure is, well, sub-optimal. (I have the same problem with Markdown interpreting two spaces at the end of line as a line break, because I’m old-school and I put two spaces at the end of every period.)
Maybe something like \
or >
on a line by itself would have the same
effect. Programmers hate special cases, but it’s probably justified in
this case.