VHS(1) Run a given tape file and generates its outputs. VHS(1)

vhs - Run a given tape file and generates its outputs.

vhs [options...] [argument...]

VHS let's you write terminal GIFs as code.

VHS reads .tape files and renders GIFs (videos).

A tape file is a script made up of commands describing what actions to perform in the render.

The following is a list of all possible commands in VHS:

  • Output <path>.(gif|webm|mp4)
  • Require <program>
  • Set <setting> <value>
  • Sleep <time>
  • Type "<string>"
  • Ctrl [+Alt][+Shift]+<char>
  • Backspace [repeat]
  • Delete [repeat]
  • Insert [repeat]
  • Down [repeat]
  • Enter [repeat]
  • Left [repeat]
  • Right [repeat]
  • Tab [repeat]
  • Up [repeat]
  • PageUp [repeat]
  • PageDown [repeat]
  • Hide
  • Show
  • Escape
  • Alt+<key>
  • Space [repeat]
  • Source <path>.tape
  • Screenshot <path>.png
  • Copy "<string>"
  • Paste

file name(s) of video output
publish your GIF to vhs.charm.sh and get a shareable URL
quiet do not log messages. If publish flag is provided, it will log shareable URL

Help about any command
Create a new tape file with example tape file contents and documentation
Publish your GIF to vhs.charm.sh and get a shareable URL
Create a new tape file by recording your actions
OPTIONS
-s, --shell shell for recording
Start the VHS SSH server
List all the available themes, one per line
OPTIONS
--markdown output as markdown
Validate a glob file path and parses all the files to ensure they are valid without running them.

The Output command instructs VHS where to save the output of the recording.

File names with the extension .gif, .webm, .mp4 will have the respective file types.

The Set command allows VHS to adjust settings in the terminal, such as fonts, dimensions, and themes.

The following is a list of all possible setting commands in VHS:

  • Set Shell <string>
  • Set FontSize <number>
  • Set FontFamily <string>
  • Set Height <number>
  • Set Width <number>
  • Set LetterSpacing <float>
  • Set LineHeight <float>
  • Set TypingSpeed <time>
  • Set Theme <json|string>
  • Set Padding <number>
  • Set Framerate <number>
  • Set PlaybackSpeed <float>

See GitHub Issues: https://github.com/charmbracelet/vhs/issues

Charm <vt100@charm.sh>

(C) 2021-2022 Charmbracelet, Inc.

Released under MIT license.

2024-04-24 vhs