Fountainhead
Contextual Sublime Text screenwriting environment using the Fountain screenplay syntax.
Install / Use
/learn @derickc/FountainheadREADME
Fountainhead
Contextual screenwriting environment that leverages the speed of Sublime Text and the readability of Fountain, enabling the user to just write.
Inspired by Jonathan Poritsky's Fountain for Sublime Text package.
Compatible with Sublime Text 2 and 3. Optimized for Sublime Text 3.
Help documentation can also be found within Sublime Text at: Tools > Fountainhead > Help.
Note: Even though Sublime Text 3 is in beta, it is extremely stable and is better than 2 in almost every way.
Support for OpenDyslexic Typeface
Fountainhead supports the open source dyslexia typeface, OpenDyslexic. The OpenDyslexic monospaced (and proportional) font can be downloaded here: http://opendyslexic.org
Instructions on how to install fonts are located in Settings - Installing Fonts.
Why Fountain?
John August gives a great explanation on the benefits of writing in Fountain.
Installation
Option A: Package Control
- Download and install Sublime Text.
- Install Package Control.
- Select Package Control: Install Package from
Tools > Command Palette(⇧⌘P / ⇧⌃P). - Select Fountainhead.
Option B: GitHub
- Download and install Sublime Text.
- Download the ZIP of this repository and uncompress it.
- Move the uncompressed Fountainhead folder to the appropriate packages directory:
- In Sublime Text, select:
Sublime Text > Preferences > Browse Packages... - Place the Fountainhead folder inside the open Packages directory.
- In Sublime Text, select:
- Relaunch Sublime Text.
Quickstart
- Open or create a new
.fountainfile.- If creating a new file, first save the file with a
.fountainfilename extension.
- If creating a new file, first save the file with a
- Verify that "Fountainhead" appears in the bottom right-hand corner.
- If it doesn't, you can click on the offending syntax and change it to
Fountainhead, or you can use the menu:View > Syntax > Open all with current extension as > Fountainhead.
- If it doesn't, you can click on the offending syntax and change it to
- Wait for the
CHARACTERS FOUND!andSCENES FOUND!text to appear in the bottom left-hand corner, letting you know that everything has loaded properly.- The text will not appear if you have disabled the Character and Scene Lists options in Fountainhead settings.
- Write!
- Only action and dialogue sentences need to begin with uppercase letters. Starting everything else with lowercase letters will allow character and scene heading autocompletion suggestions to appear.
- The
Spacekey will cause the autocomplete window to close, so write without spaces to keep the window open. - Pressing the
Tabkey will select the highlighted autocomplete selection.
- The
- Characters, scene headings, and transitions are automatically capitalized when you press the
Returnkey at the end of a line.Command+Return(Control+Return) will produce a normal carriage return.- Starting a character name with
@will keep it as it's written. Typing an already entered@character name in lowercase will cause the autocomplete window to appear, which will enter the name in the correct format.
- Fountainhead commands can be found in the
Tools > Fountainheadmenu. - Instructions to change settings are in:
Tools > Fountainhead > Preferences > Fountainhead Settings - Default, and can also be found in the Settings section of this document.- Additional settings that are off by default can be activated, like auto-save.
- The window will automatically scroll down once you reach the bottom.
- Only action and dialogue sentences need to begin with uppercase letters. Starting everything else with lowercase letters will allow character and scene heading autocompletion suggestions to appear.
- Customize Fountainhead by picking a color scheme (explained in Features - Color Schemes).
Symbol Dictionary
Symbol | Key
-------|----
⏎ | Return
⌘ | Command/Cmd/Super
⌥ | Option/Alt
⌃ | Control/Ctrl
⇧ | Shift
→ | Right Arrow
↑ | Up Arrow
↓ | Down Arrow
Key bindings are displayed as: OSX / Windows/Linux
Fountain Syntax
Fountainhead offers complete support of the Fountain syntax. For a complete overview of the Fountain syntax, go to http://fountain.io/syntax.
Note: Leading spaces and tabs are supported.
What you want | How to get it
--------------|---------------
Scene Headings | Start line with: INT., EXT., EST., INT./EXT., INT/EXT, I/E, . (forced scene heading)
Scene Numbers | End Scene Heading with: #Scene Number#
Action | Paragraph of text (empty line before and after) or force Action by starting line with !
Character | All uppercase with empty line before and without an empty line after or force by starting line with @ to allow for names with lowercase letters
Character Extensions | End character line with (O.S., V.O., CONT'D)
Dialogue | Lines of text that are beneath Character or Parenthetical lines
Parenthetical | Lines of (Parenthetical Text) that are beneath Character or Dialogue lines
Dual Dialogue | End second Character with: ^
Lyrics | Start line with: ~
Transitions | FADE IN:, FADE OUT., FADE TO BLACK., all uppercase line that ends with: TO:, or force by starting line with: >
Notes | [[Note Text]]
Boneyard (ignored text) | /*Boneyard Text*/
Sections | Start line with one or more: #
"Act" Section | Start line with: # Act
"Sequence" Section | Start line with: ## Sequence
"Scene" Section | Start line with: ### Scene
Synopses | Start line with: =
Centered Text | >Centered Text<
Page Breaks | Line that only contains three or more consecutive equal signs: ===
Line Breaks | Lines can be broken up by using carriage returns
Italics | *Italic Text*
Bold | **Bold Text**
Bold Italics | ***Bold Italic Text***
Underline | _Underline Text_
* | \*
Title Page | Title Page Key that ends with : and precedes its value (Each key can have multiple values by placing them on newlines that are indented 3+ spaces or by a tab)
Title: | Title: Title
Credit: | Credit: Written by
Author: | Author: Author Name(s)
Source: | Source: Story by...
Draft date: | Draft date: Date
Contact: | Contact: Contact Info
###Example:
Title:
Title 1
Title 2
Credit: Written by
Author: Author name
Source: Story by...
Draft date: 12/10/2014
Contact:
Contact Info
Address Line 1
Address Line 2
# Act 1
= The introduction of Character
EXT. HOUSE - DAY
Some action text.
CHARACTER
(parenthetical)
Dialogue.
CUT TO:
.Scene Heading
Features
Fountainhead takes care of the formatting, so you just have to worry about the words.
Fountainhead commands can be found by selecting:
Tools > Fountainhead
or
Tools > Command Palette (⇧⌘P / ⇧⌃P) and entering Fountainhead
All settings can be deactivated and customized by the user, as described in the Settings section.
Automatic Capitalization and Line Spacing
Fountainhead believes in efficiency, and that means doing away with superfluous Shift and Caps Lock usage. It is smart enough to know which elements should be in all uppercase letters. Unless it's the beginning of an action or dialogue sentence, type everything in lowercase, and let Fountainhead handle the super-sizing.
Pressing ⏎ at the end of lines will have the following effect*:
* Pressing ⌘⏎ / ⌃⏎ will produce a normal carriage return.
Element Type | Uppercase | Line Spacing
-------------|-----------------|-------------
Scene Headings | YES | DOUBLE
Action | NO | DOUBLE
Characters* | YES | SINGLE
@ Characters** | NO | SINGLE
Dialogue*** | NO | DOUBLE
Lyrics | NO | SINGLE
Parenthetical | NO | SINGLE
Transitions | YES | DOUBLE
Notes | NO | DOUBLE
Boneyard | NO | SINGLE
Sections | NO | DOUBLE
Synopses | NO | DOUBLE
Centered Text | NO | DOUBLE
Page Breaks | N/A | DOUBLE
Title Page | NO | SINGLE
* Supports V.O. and O.S. character elements, which are automatically capitalized.
** Character names that begin with @ will remain as written, but V.O. and O.S. will be capitalized ( e.g., @McDOWELL (v.o.) > @McDOWELL (V.O.) ).
*** Dialogue lines that are not complete sentences have single line spacing. Dialogue line spacing can be changed in settings.
Manual Capitalization
For those times that manual capitalization is needed (e.g., edits), the following commands are provided:
Key Combination | Performs the Following Action
----------------|------------------------------
⌘K, ⌘L / ⌃K, ⌃L* | Convert highlighted text to lowercase
⌘K, ⌘U / ⌃K, ⌃U* | Convert highlighted text to uppercase
⌘K, K / ⌃K, K** | Capitalize the entire line
* The comma is used to separate the sequence of key presses (X,Y is equal to "Press X, and then press Y").
** All commands use lowercase letters (K is equal to pressing k), unless preceded by ⇧/Shift.
The above commands can also be selected through the use of menus:
Tools > Fountainhead > Convert to Lowercase
Tools > Fountainhead > Convert to Uppercase
Tools > Fountainhead > Capitalize Current Line
or
Tools > Command Palette (⇧⌘P / ⇧⌃P) and entering Fountainhead: Convert to Lowercase
Tools > Command Palette (⇧⌘P / ⇧⌃P) and entering Fountainhead: Convert to Uppercase
Tools > Command Palette (⇧⌘P / ⇧⌃P) and entering Fountainhead: Capitalize Current Line
Automatic Escaping of Parentheses, Boneyard, and Notes
Pressing ⏎ when the cursor is directly to the left of the closing ),*/, ]] will automatically escape the element and create a line break.
Pressing ⇧Space is the same as pressing → and will move your cursor to the right (useful for keyboa
