← All help articles

Help / 02

Writing and formatting

INT.EXT formats the page for you. You write in blocks, one element type per paragraph, and the app handles margins, layout, and page flow.

The six elements

ElementWhat it is for
Scene HeadingINT. WRITING ROOM - NIGHT
ActionDescription of what we see
CharacterThe name above dialogue
DialogueWhat the character says
ParentheticalA short direction inside dialogue, like (quietly)
TransitionCUT 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.