Screenwriter
One of the most universal and simple solutions for writing screenplays is Screenwriter, a fork of Screenplay-Mode by Vance L. Simpson. Screenwriter is a plugin for the famous GNU Emacs text editor (or in Emacs terminology, it is a [major] “mode”).
Screenwriter mode is easy to use, efficient, and works on any and every platform that the ubiquitous and revered GNU Emacs works on.
Strengths [Weaknesses]
WYSIWIG
Write screenplays with on-the-fly formatting, but in the universal format of plain text. This is not a markup language, so what you see is what you will get on the page.
Plugin
Screenwriter is a plugin for an existing popular editor, meaning that there's nothing to install aside from one .el
file. And if you're using Emacs on a daily basis anyway, this fits nicely in with your existing workflow.
Simple
Emacs is a complex editor, with a high ceiling that frightens many tech-hesitant users, but Screenwriter mode is easy to use and involves only the simplest keyboard shortcuts.
Weaknesses [Strengths]
Formatted
Plain text is eternal, but Screenwriter does format the text, so the output is intended for print. It being plain text, the formatting can be easily reversed, but Screenwriter output is not as unstructured as Fountain markup.
Emacs
There's no denying that the Emacs interface is unique. Even though Screenwriter uses only the most basic features of Emacs, it's common for users to find complexity in the most unexpected places. For a more familiar interface that acts more like a modern word processor, try Trelby.
Install
If you are running a default install of Slackware, as Slackermedia recommends,
then you will have Emacs installed already. If you have not installed Emacs,
you will find it in the e
package set and is available on your install media, Slackpkg, or directly from a Slackware mirror.
Installing .el
files for Emacs is as simple as placing the .el
in a user-owned
~/elisp
directory, and then adding that ~/elisp
directory into Emacs's load
directory if it is not already there:
$ mkdir ~/elisp $ wget http://nongnu.org/screenwriter/download/screenwriter-X.Y.Z.tar.gz $ tar -xf screenwriter-X.Y.Z.tar.gz $ mv ./screenwriter-mode/screenwriter.el ~/elisp $ echo "(add-to-list 'load-path \"~/elisp\")" >> .emacs $ echo "(require 'screenplay)" >> .emacs
Usage
Start Emacs from either the K Menu or from a terminal. Once Emacs is open, press alt
x
, and type screenwriter-mode
. You are now in screenplay-mode and can write in proper screenplay format.
There are three elements in screenplays:
- Slug Lines - scene headings, such as INT. CAFE - NIGHT
- Screen Direction (or “action”) - text describing what a character is doing physically during a scene
- Dialogue - heavily indented blocks of text in which characters speak
- Transitions - FADE IN, FADE OUT, DISSOLVE TO, and so on
Accessing each element is done with keyboard commands that can be easily remembered with the mnemonic (more or less) SAD:
ctrl
c
,s
Sluglinectrl
c
,a
Action (Screen direction)ctrl
c
,d
Dialogue
Plus the straggler, and infrequently used:
ctrl
c
,t
Transition
Or for refugees of closed source screenwriting applications that used the Tab
key for control:
tab
,return
Sluglinetab
,tab
,return
Actiontab
,tab
,tab
,return
Dialoguetab
,tab
,tab
,tab
,return
Transition
Regardless of how you trigger different line types, whitespace is handled for you; there is no need to explicitly place a blank line between the actor's lines, or between a slugline and the beginning of the action, and so on.
Streamlining Screenwriter
Make screenwriter-mode
a quicker launch from within emacs by adding a global
keyboard shortcut for it, and defining the expected file suffix in your ~/.emacs
file:
; quick and easy way to enter screenwriter-mode (global-set-key (kbd "<f5>") 'screenwriter-mode) ; open .scp or .screenplay ; files in screenwriter-mode (setq auto-mode-alist (cons '("\\.scp" . screenwriter-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.screenplay" . screenwriter-mode) auto-mode-alist))
Save your .emacs
file and launch Emacs.
Pressing F5
should place you in Screenwriter mode.
Save a sample screenplay (sample.scp
, for example), and then close Emacs. Open Emacs again and open a file via the File menu → Open File or by using the ctrl
x
ctrl
f
key sequence. Open your sample.scp
and note that Emacs opens it in
screenwriter-mode
.
In Dolphin, right-click on sample.scp
and choose Open With Emacs
.
The file will be opened in screenwriter-mode
in Emacs. However, default KDE uses
the much faster single-click method, so it would be nice if a single click on any .scp
or .screenplay
file would open in Emacs, and Emacs in turn would start Screenwriter mode.
Emacs is already set for .scp
and .screenplay
, so only KDE needs to be configured:
- Open
System Settings
and click theFile Associations
icon. - Click the Add… button on the left of the panel to add a new file type.
- Place your new file type in the Text category. It will be placed at the bottom of the text list; select it and configure it on the right side of the panel.
- You may give your file type a custom icon or just use the default.
- Define the file extension as both
.scp
(or whatever custom extension you want to use, if neither of these appeal to you).and
.screenplay - Give the Application Preference Order a sensible set of applications. The documents are in plain text, so they may be opened in any text editor; Emacs as the first is obvious, but Kate and KWrite are likely candidates for fallback applications.
- Click the Apply button in the lower right corner to save your configuration.
Now if you click on sample.scp
from Dolphin, KDE will open the file in Emacs, and Emacs will enter screenwriter-mode upon detecting the .scp
suffix.
You now have a screenplay authoring program for Slackermedia, and quite likely for any other platform you could possibly run.
Screenplay-Tools
The screenplay-tools
suite is a set of shell scripts to help with page breakdowns, scheduling, and planning a shoot. They are bundled with screenwriter-mode
but do not run in Emacs. They run in a terminal.
Full documentation is included in the download, and also on http://www.nongnu.org/screenwriter/tools/intro.html.