vhs - Run a given tape file and generates its outputs.
vhs [options...] [argument...]
VHS lets 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 |
|||
|
• |
Wait[+Screen][@<timeout>] /<regexp>/ |
|||
|
• |
Escape |
|||
|
• |
Alt+<key> |
|||
|
• |
Space [repeat] |
|||
|
• |
Source <path>.tape |
|||
|
• |
Screenshot <path>.png |
|||
|
• |
Copy "<string>" |
|||
|
• |
Paste |
-o, --output
file name(s) of video output
-p, --publish
publish your GIF to vhs.charm.sh and get a shareable URL
-q, --quiet
quiet do not log messages. If publish flag is provided, it will log shareable URL
help [command]
Help about any command
new <name>
Create a new tape file with example tape file contents and documentation
publish <gif>
Publish your GIF to vhs.charm.sh and get a shareable URL
|
record |
Create a new tape file by recording your actions
OPTIONS
-s, --shell shell for recording
|
serve |
Start the VHS SSH server
|
themes |
List all the available themes, one per line
OPTIONS
--markdown output as markdown
validate <file>...
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> |
|||
|
• |
Set WaitTimeout <time> |
|||
|
• |
Set WaitPattern <regexp> |
See GitHub Issues: <https://github.com/charmbracelet/vhs/issues>
Charm <[email protected]>
(C) 2021-2022 Charmbracelet, Inc.
Released under MIT license.