The six elements
| Element | What it is for |
|---|---|
| Scene Heading | INT. WRITING ROOM - NIGHT |
| Action | Description of what we see |
| Character | The name above dialogue |
| Dialogue | What the character says |
| Parenthetical | A short direction inside dialogue, like (quietly) |
| Transition | CUT TO: and similar |
Moving through the form with Return
Press Return to finish a block and start the next one. INT.EXT chooses the natural next element so the form flows without menus:
- After a scene heading, an action block
- After a character, dialogue
- After a parenthetical, dialogue
- After dialogue, action
- After a transition, a scene heading
Pressing Return mid-block splits it at the cursor; the second half becomes the next element.
Changing an element's type
Three ways, fastest first:
Direct shortcut: hold ⌘ (Ctrl on Windows/Linux) and press a number. ⌘1 Action, ⌘2 Scene Heading, ⌘3 Character, ⌘4 Dialogue, ⌘5 Parenthetical, ⌘6 Transition.
Tab: cycles the current block to the next type and opens the element picker so you can see where you are. Use the arrow keys and Enter to choose, or Escape to close it.
Typed shortcut: at the start of an empty block, type int, ext, or i/e (with or without the period). The block becomes a scene heading and the prefix is completed for you, uppercase and ready for the location.
Dialogue cues and suggestions
When you are in a character block, INT.EXT quietly suggests as you type:
- Known names: characters who already speak in this screenplay, so recurring names stay consistent. Arrow keys move the selection, Enter accepts, Escape dismisses.
- Cue extensions: once the name is complete, the suggestions switch to standard extensions:
(V.O.),(O.S.),(O.C.),(CONT'D),(PRE-LAP).
Accepting a name or cue extension finishes the character cue and moves straight into dialogue. If you want a parenthetical before the line, use ⌘5 (Ctrl+5) from the dialogue block.
Suggestions never write dialogue for you. They only appear when you are already writing a cue, and ignoring them costs nothing.
Dual dialogue
Write the two speeches as normal adjacent dialogue runs. Put the cursor in either speech, open Commands, and run Dual Dialogue. The browser editor does not require selecting both whole blocks.
After grouping, the dual-dialogue beat is atomic so it can survive imports, exports, drafts, inserts, and recovery without flattening the two columns.
Deleting and merging blocks
- Backspace in an empty block removes it and returns you to the previous block.
- Backspace at the very start of a block merges it into the block above.
- ⌘Backspace (Ctrl+Backspace) cuts the whole current block. It goes to the Cut Bin, not into the void, so you can get it back.
- Deleting when the entire block's text is selected also sends the block to the Cut Bin.
Undo and redo
⌘Z (Ctrl+Z) undoes; ⌘⇧Z or ⌘Y (Ctrl+Y) redoes. Undo history covers block edits, type changes, splits, merges, and cuts.
Pages and page count
The page indicator follows the rendered screenplay page, the same geometry used for PDF export, not a words-per-page estimate. The Pages section in the right rail shows where pages break. If your page count differs from another app's, see the FAQ.
Focus Mode and dark mode
Press Focus in the top bar (or run Focus Mode from the command menu) to hide both side rails and keep only the page. Press it again to bring the rails back.
Press Dark in the top bar to switch themes. Your choice is remembered on this browser. Dark mode changes the app around the page; exports are unaffected.