1+ # VHS documentation
2+ #
3+ # Output:
4+ # Output <path>.gif Create a GIF output at the given <path>
5+ # Output <path>.mp4 Create an MP4 output at the given <path>
6+ # Output <path>.webm Create a WebM output at the given <path>
7+ #
8+ # Settings:
9+ # Set FontSize <number> Set the font size of the terminal
10+ # Set FontFamily <string> Set the font family of the terminal
11+ # Set Height <number> Set the height of the terminal
12+ # Set Width <number> Set the width of the terminal
13+ # Set LetterSpacing <float> Set the font letter spacing (tracking)
14+ # Set LineHeight <float> Set the font line height
15+ # Set Theme <string> Set the theme of the terminal (JSON)
16+ # Set Padding <number> Set the padding of the terminal
17+ # Set Framerate <number> Set the framerate of the recording
18+ # Set PlaybackSpeed <float> Set the playback speed of the recording
19+ #
20+ # Sleep:
21+ # Sleep <time> Sleep for a set amount of <time> in seconds
22+ #
23+ # Type:
24+ # Type[@<time>] "<characters>" Type <characters> into the terminal with a
25+ # <time> delay between each character
26+ #
27+ # Keys:
28+ # Backspace[@<time>] [number] Press the Backspace key
29+ # Down[@<time>] [number] Press the Down key
30+ # Enter[@<time>] [number] Press the Enter key
31+ # Space[@<time>] [number] Press the Space key
32+ # Tab[@<time>] [number] Press the Tab key
33+ # Left[@<time>] [number] Press the Left Arrow key
34+ # Right[@<time>] [number] Press the Right Arrow key
35+ # Up[@<time>] [number] Press the Up Arrow key
36+ # Down[@<time>] [number] Press the Down Arrow key
37+ # Ctrl+<key> Press the Control key + <key> (e.g. Ctrl+C)
38+ #
39+ # Display:
40+ # Hide Hide the subsequent commands from the output
41+ # Show Show the subsequent commands in the output
42+
43+ Output assets/demo.gif
44+ Output assets/demo.mp4
45+
46+ Set FontSize 24
47+ Set Width 1200
48+ Set Height 800
49+
50+ Hide
51+ Type@1ms "export PATH=$(pwd)/dist:$PATH old_dir=$(pwd) new_dir=/tmp/git-repo"
52+ Enter
53+ Type@1ms "rm -rf $new_dir && mkdir -p $new_dir && cd $new_dir"
54+ Enter
55+ Type@1ms "cp $old_dir/commit_convention.yaml $new_dir && git init && git checkout -b main"
56+ Enter
57+ Type@1ms "touch ./foo && git add foo"
58+ Enter
59+ Type "clear"
60+ Enter
61+
62+ Type "export EDITOR=vi"
63+ Enter
64+ Show
65+
66+ # start the TUI
67+ Type "git cc"
68+ Sleep 300ms
69+ Enter
70+
71+ # navigate the type-selector
72+ Sleep 400ms
73+ Type@250ms "fe"
74+ Sleep 400ms
75+ Enter
76+
77+ # navigate the scope-selector
78+ Sleep 400ms
79+ Type "scope"
80+ Sleep 400ms
81+ Enter
82+
83+ # enter a new scope
84+ Sleep 200ms
85+ Escape
86+ Type "12G"
87+ Enter
88+ Type "$"
89+ Type "i"
90+ Right
91+ Enter
92+ Backspace 2
93+ Type "- scope: description of scope"
94+ Escape
95+ Type ":wq"
96+ Enter
97+ Sleep 500ms
98+ Enter
99+
100+ # describe change
101+ Sleep 500ms
102+ Type "informative message about the change"
103+ Sleep 200ms
104+ Enter
105+
106+ # describe a breaking change
107+ Sleep 500ms
108+ Type "what this commit broke"
109+ Sleep 500ms
110+ Enter
111+
112+ # fill out remaining detail
113+ Type "3G"
114+ Type "i"
115+ Enter 2
116+ Up 2
117+ Type "additional details"
118+ Enter
119+ Escape
120+ Type ":wq"
121+ Enter
122+ Sleep 200ms
0 commit comments