sponsor Vim development Vim logo Vim Book Ad

fountain.vim : Syntax for Fountain screenplay files

 script karma  Rating 179/69, Downloaded by 5102  Comments, bugs, improvements  Vim wiki

created by
carson fire
script type
Fountain is a plain text markup language for screenwriting.

Previously SPMD (screenplay markdown), Fountain is very official, now, and getting to be something of a Big Deal, as it merges two similar screenwriting projects into one. The format can be converted into Final Draft files (FDX) and HTML, and can be imported by Final Draft and Movie Magic. Scrippets (less powerful conversion) is available for WordPress, BBEdit, and other web standards.


Fountain is much like SPMD, with some important changes. Atx headers are now supported in order to create sections, and this makes Fountain compatible with the Voom outliner (vimscript #2657) in Markdown mode.

Commenting has been changed; and an important feature called Boneyard is introduced, allowing for flexible striking of deleted material.

Known issues in the current version: text emphasis only renders in 'normal' text (action, not dialogue), and adding eol double-spaces does not have the intended corrective effect (this should be fixed in an update).

The official Fountain site contains a great deal of helpful material, including sample scripts and apps. In brief, Fountain allows you to type a screenplay in plain text. Here is an excerpt from Big Fish by John August, one of the screenwriters behind Fountain, and note that the text can be flush or tabbed as desired.

Turn off your flashlights!  She'll see 'em.

MOVING UP behind the kids, we find ourselves at the gates of...


Now, it's common knowledge that most towns of a certain size have a witch, if only to eat misbehaving children and the occasional puppy who wanders into her yard.  Witches use those bones to cast spells and curses that make the land infertile.


The following image previews the syntax in a few different colorschemes:


Happy screenwriting!
install details
Save the file fountain.vim to your ~/.vim/syntax directory and add a line in your ~/.vimrc or in ~/.vim/filetype.vim to load this syntax file for all *.fountain files, or create an additional fountain.vim file in ~/.vim/ftdetect including this line:

au BufRead,BufNewFile *.fountain set filetype=fountain

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
fountain.vim 2.02 2012-02-20 7.3 carson fire More minor improvements. Notes fixed.
fountain.vim 2.01 2012-02-19 7.3 carson fire Extremely minor changes; slightly improved character name matching. Scene numbers now included (such as #1# on scene header line).
fountain.vim 2.0 2012-02-09 7.3 carson fire SPMD is now Fountain! Although much is the same, this version reflects some important changes in the official syntax, and this version simply works better in Vim than the previous one. Please do not use the old spmd.vim, use fountain.vim instead!
spmd.vim 1.1 2012-01-14 7.0 carson fire Corrections and changes (new specs released on 1/13/2012)

* Because of potential conflict, no longer link to Markdown syntax for italics and bold--this is now implemented independently, and only in action lines and any other non-formatted sections
* Included all the possible scene headers from the SPMD appendix, uppercase and lower
* Spaces and tabs allowed before character name, parenthetical, and dialogue
* Spaces at end "corrects" non-character name uppercase line
* EOL double-space highlighting
* Parentheticals allowed on character name line (must be in caps)
* Cut line allows colon at end, or greater-than symbol at beginning
* Forced scene headings
* Revised dual dialogue syntax (previous syntax commented out in case of future revisions)
* Page breaks

Not yet supported:
* Title page formatting (specs say this will change substantially anyway)
* Italics, bold, and underline within dialogue and other contained areas
* Sections
spmd.vim 1 2012-01-14 7.0 carson fire Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.