v0.2.0 80c61e3

demo.tape RawHistoryFolder

1Require vev
2Output out/demo.gif
3Set Shell bash
4Set FontFamily "JetBrainsMono Nerd Font"
5Set FontSize 20
6Set Width 1200
7Set Height 750
8Set Padding 12
9Set Margin 20
10Set MarginFill "#161B22"
11Set WindowBar Colorful
12Set WindowBarSize 36
13Set BorderRadius 10
14Set Theme "GitHub Dark"
15Set TypingSpeed 100ms
16Set Framerate 30
17Set WaitTimeout 30s
18
19# Visible shell commands are typed with hand-varied Type@<speed>
20# (70-160ms) and short hesitations at word boundaries so the rhythm
21# reads irregular/human; palette codes (CNS/SSP/…) stay single-speed.
22
23# ── Session "work": a colourful split (eza + ticker) ─────
24Type@90ms "vev "
25Sleep 160ms
26Type@75ms "new "
27Type@140ms "work"
28Enter
29Sleep 1.1s
30Type@85ms "eza "
31Sleep 200ms
32Type@75ms "-la "
33Type@130ms "/etc"
34Enter
35Sleep 1.5s
36Alt+" "
37Sleep 550ms
38Type "SPR"
39Enter
40Sleep 650ms
41Type@80ms "tick"
42Type@150ms "er"
43Enter
44Sleep 1.5s
45
46# ── Session "agents": launch the bell job early so its
47#    sleep overlaps the middle scenes. claude -p prints the
48#    answer but emits no bell of its own (verified), so the
49#    pane rings it with printf. ───────────────────────────
50Alt+" "
51Sleep 550ms
52Type "CNS"
53Enter
54Sleep 550ms
55Type@95ms "agents"
56Enter
57Sleep 900ms
58Type@80ms "sleep "
59Type@140ms "10 "
60Sleep 170ms
61Type@90ms "&& claude "
62Type@150ms "-p "
63Type@105ms `"say hello world" `
64Sleep 220ms
65Type@85ms "&& printf "
66Type@130ms `'\a'`
67Enter
68Sleep 1s
69
70# Back to work — palette-typed session switch: type the session
71# name directly (no command code), it ranks top of the results.
72Alt+" "
73Sleep 550ms
74Type@95ms "work"
75Enter
76Sleep 1s
77
78# ── Session "work": stacked panes (ticker keeps ticking) ─
79# Member 1 is the eza pane already on screen; member 2 opens the
80# ticker script itself in neovim (self-referential, bash syntax).
81Alt+h
82Sleep 550ms
83Alt+" "
84Sleep 550ms
85Type "STP"
86Enter
87Sleep 650ms
88Type@85ms "nvim "
89Sleep 150ms
90Type@110ms "/usr/local/bin/"
91Type@130ms "ticker"
92Enter
93Sleep 1.5s
94Alt+k
95Sleep 900ms
96Alt+j
97Sleep 900ms
98
99# ── Session "work": floating pane preserves its program ──
100# Open a man page, scroll it, hide, then show again at the same
101# scroll position — proves the float keeps program + scroll state.
102Alt+f
103Sleep 550ms
104Type@90ms "man "
105Type@130ms "ls"
106Enter
107Sleep 1.2s
108Space
109Sleep 700ms
110Alt+f
111Sleep 900ms
112Alt+f
113Sleep 1.2s
114Type "q"
115Sleep 550ms
116Alt+f
117Sleep 500ms
118
119# ── Session "monitor": fastfetch + htop, each full-width,
120#    never split. ─────────────────────────────────────────
121Alt+" "
122Sleep 550ms
123Type "CNS"
124Enter
125Sleep 550ms
126Type@95ms "monitor"
127Enter
128Sleep 900ms
129Type@80ms "fast"
130Type@130ms "fetch"
131Enter
132Sleep 1.7s
133Alt+" "
134Sleep 550ms
135Type "CNT"
136Enter
137Sleep 550ms
138Type@90ms "htop"
139Enter
140Sleep 1.9s
141Alt+"1"
142Sleep 1.2s
143Alt+"2"
144Sleep 1.1s
145
146# ── Bell cross-session: the agents job has rung; jump to it ─
147Sleep 900ms
148Alt+a
149Sleep 1.9s
150
151# ── Session picker now lists all three sessions ──────────
152Alt+" "
153Sleep 550ms
154Type "SSP"
155Enter
156Sleep 1.2s
157Down
158Sleep 450ms
159Down
160Sleep 450ms
161Down
162Sleep 650ms
163Enter
164Sleep 1.2s
165
166# ── Detach / re-attach: three sessions survive, ticker on ─
167Alt+" "
168Sleep 550ms
169Type "DET"
170Enter
171Sleep 1s
172Type@90ms "vev "
173Type@75ms "ls"
174Enter
175Sleep 1.8s
176Type@90ms "vev "
177Sleep 150ms
178Type@80ms "attach "
179Type@140ms "work"
180Enter
181Sleep 2.2s
182Sleep 400ms

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 12

Tags 11

↑↓ moveenter openesc close