Commands
| Command | |
|---|---|
Import <path> |
A preset to read first. Only on the first lines, before Launch, Open, Screen or Include. |
Launch <bundle id or .app path> |
The app to record: a bundle id, or a path with a slash (./Name.app). reel waits for its first window. |
Open <url> |
A web page to record instead: https://…, http://…, file://… or an .html path, #fragment allowed. Later in the reel, goes to another page: a new fragment of the same page only scrolls, the same address reloads. |
Screen code |
A code screen to record instead: an editor of reel's own. |
Attach <bundle id or .app path> as <name> |
In a reel of tracks: an app something else opens, recorded from when its window shows. See Reels together. |
Layout <arrangement>, Split <share>% …, Spotlight <track>, Fullscreen <track>, Pip <track> [over <track>] [corner] |
In a reel of tracks, the director's moves over them, each with off and @<easing>,<duration>. See Directing the tracks. |
Screen terminal |
A terminal to record instead: a real shell in a terminal of reel's own. |
Include <scene.reel>, Include@<transition> <scene.reel> |
Other reels to join, as scenes, in order; each after the first moves in from the one before. |
Before the first step.
| Command | |
|---|---|
Output <path> |
A file to write: .mp4, .mov or .gif. At least one. |
Output@<shape> <path> |
Framed on a canvas: @16:9, @1:1, @9:16, or an exact size such as @1080x1920. |
Set <setting> <value> |
See Settings. |
Intro "<title>" ["<subtitle>"] [duration] |
A title card before the demo. |
Outro "<title>" ["<subtitle>"] [duration] |
One after it. |
Intro [duration], Outro [duration] |
The background video alone. |
Intro@<kind>,<easing>,<duration> … |
How it moves into the demo (an outro: out of it). See Intro and outro. |
Profile <name> [extends <profile>] ["purpose"] |
A profile, with indented Set lines under it. |
| Command | |
|---|---|
Sleep <duration> |
Waits. |
Wait <element> |
Waits until the element shows, up to WaitTimeout. |
Wait [marker] |
Waits until the narration reaches a [marker] in an earlier Say@over. |
Wait for <name>, Wait for <name> to end |
Waits until a step named <name> in another reel running with this one starts, or ends. See Reels together. |
… as <name> |
At the end of any step: names it, for other reels to wait for. |
Click <element or @x,y> |
Glides the cursor there and clicks. |
Type "<text>", Type@<duration> "<text>" |
Types a character at a time. \n is return, \t tab. |
Key <combo> [count] |
return, a, cmd+s, ctrl+shift+tab, f5, fn+left; repeated count times (1 to 100). |
Scroll <up\|down\|left\|right> [lines] [element or @x,y] |
Scrolls, over the element when one is named. |
Say "<text>" |
Narrates the line and waits for it to end. |
Say@over "<text>" |
Narrates and carries on. |
Say@<voice> "<text>", Say@<voice>,over "<text>" |
Narrates in a voice named with Set Voice <name> <voice>. |
Caption "<text>" [duration] |
A caption from here until the next one, or for duration. |
Caption off |
Ends the caption showing. |
Zoom <element> [scale] |
Onto the element, locked and following it. Fitted, at most 4×, without a scale. |
Zoom @x,y [scale], Zoom cursor [scale] |
Onto a point, or following the cursor; 2× unless a scale is given. Scales are 1× to 8×. |
Zoom off |
Back to the whole window. |
Zoom@<easing>,<duration> … |
A zoom with its own move. |
Speed <rate>x … Speed off |
Plays the stretch faster, above 1× up to 16×. In a reel of tracks, the director's only. |
Hide … Show |
Leaves the stretch out. A Hide with no Show runs to the end. In a reel of tracks, the director's only. |
After Screen code. See Code.
| Command | |
|---|---|
Code <file> [lines <a>-<b>] [at line <n> \| at "<text>"] |
Shows a file, or lines of it numbered as in the file, the cursor at a line or the first match of the text. |
Go line <n>, Go "<text>" |
Moves the cursor there, easing the view to it. |
Focus lines <a>-<b>, Focus off |
Dims every other line. |
Mark "<text>" [n], Mark off |
A box around the text, numbered n; boxes add up until Mark off. |
Callout "<text>" "<label>", Callout off |
A bubble saying the label beside the text's line. |
Code@<transition> <file> … |
The file before moves out as this one comes in: any intro transition. |
Split <file> […], Split off |
A second pane beside the first, which steps then act on. |
Pane left, Pane right |
Which pane steps act on. |
Peek "<text>" <file> […], Peek off |
Another file in a box under the line with the text. |
Link "<a>" -> "<b>" ["<label>"], Link off |
An arrow from one place to another, across the panes when split. |
Diff[@<transition>] <before> <after> [at …], Diff <file> since <revision> [at …] |
Two versions as one, what changed marked. |
Go hunk <n>, … at hunk <n> |
A diff's nth run of changes. |
Follow, Follow off |
Marks the line of the reel the pane shows that is running right now, somewhere on the channel. See Reels together. |
Morph[@<easing>,<duration>] <file> [lines <a>-<b>] [at …] |
The file shown turns into this one, its words moving to their new places. |
After Screen terminal. See Terminal. Type, Key (the keys a shell takes, and ctrl+ a
letter), Mark and Callout work too.
| Command | |
|---|---|
Wait /<regex>/ |
Until what was printed since the last thing typed matches. |
Wait quiet [duration] |
Until nothing has been printed for that long, 500ms unless given. |
Wait exit |
Until the command running ends and the prompt is back. |
Elements are "Label", #identifier, @x,y points, or on a web page css:<selector>: see
Elements.