v0.3.0 99dc266

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# ── Local and remote history, shown immediately ──────────
24Type@180ms "vev"
25Sleep 600ms
26Enter
27Sleep 1.1s
28# Keep the initial local shell so the final detach/attach cycle is meaningful.
29Alt+" "
30Sleep 550ms
31Type "RNS "
32Type@95ms "local"
33Enter
34Sleep 1s
35
36# The picker starts with the local shell plus two ready remote sessions.
37Alt+" "
38Sleep 550ms
39Type "SSP"
40Enter
41Sleep 1.5s
42Down 2
43Sleep 700ms
44Enter
45Sleep 2.5s
46
47# The selected work session belongs to the remote container.
48Type@85ms "eza "
49Sleep 200ms
50Type@75ms "-la "
51Type@130ms "/etc"
52Enter
53Sleep 1.5s
54Alt+" "
55Sleep 550ms
56Type "SPR"
57Enter
58Sleep 650ms
59Type@80ms "tick"
60Type@150ms "er"
61Enter
62Sleep 1.5s
63
64# ── Session "agents": launch the bell job early so its
65#    sleep overlaps the middle scenes. ─────────────────────
66Alt+" "
67Sleep 550ms
68Type "CNS "
69Type@95ms "agents"
70Enter
71Sleep 900ms
72Type@80ms "sleep "
73Type@140ms "10"
74Sleep 220ms
75Type@85ms " && printf "
76Type@130ms `'\a'`
77Enter
78Sleep 1s
79
80# Back to work — palette-typed session switch: type the session
81# name directly (no command code), it ranks top of the results.
82Alt+" "
83Sleep 550ms
84Type@95ms "work"
85Enter
86Sleep 1s
87
88# ── Session "work": stacked panes (ticker keeps ticking) ─
89# Member 1 is the eza pane already on screen; member 2 opens the
90# ticker script itself in neovim (self-referential, bash syntax).
91Alt+h
92Sleep 550ms
93Alt+" "
94Sleep 550ms
95Type "STP"
96Enter
97Sleep 650ms
98Type@85ms "nvim "
99Sleep 150ms
100Type@110ms "/usr/local/bin/"
101Type@130ms "ticker"
102Enter
103Sleep 1.5s
104Alt+k
105Sleep 900ms
106Alt+j
107Sleep 900ms
108
109# ── Session "work": floating pane preserves its program ──
110# Open a man page, scroll it, hide, then show again at the same
111# scroll position — proves the float keeps program + scroll state.
112Alt+f
113Sleep 550ms
114Type@90ms "man "
115Type@130ms "ls"
116Enter
117Sleep 1.2s
118Space
119Sleep 700ms
120Alt+f
121Sleep 900ms
122Alt+f
123Sleep 1.2s
124Type "q"
125Sleep 550ms
126Alt+f
127Sleep 500ms
128
129# ── Session "monitor": fastfetch + htop, each full-width,
130#    never split. ─────────────────────────────────────────
131Alt+" "
132Sleep 550ms
133Type "CNS "
134Type@95ms "monitor"
135Enter
136Sleep 900ms
137Type@80ms "fast"
138Type@130ms "fetch"
139Enter
140Sleep 1.7s
141Alt+" "
142Sleep 550ms
143Type "CNT"
144Enter
145Sleep 550ms
146Type@90ms "htop"
147Enter
148Sleep 1.9s
149Alt+"1"
150Sleep 1.2s
151Alt+"2"
152Sleep 1.1s
153
154# ── Bell cross-session: the agents job has rung; jump to it ─
155Sleep 900ms
156Alt+a
157Sleep 1.9s
158
159# ── Session picker now lists local and remote sessions ───
160Alt+" "
161Sleep 550ms
162Type "SSP"
163Enter
164Sleep 1.5s
165Escape
166Sleep 650ms
167
168# ── Detach / re-attach: local sessions survive, ticker on ─
169Alt+" "
170Sleep 550ms
171Type "DET"
172Enter
173Sleep 1s
174Type@90ms "vev "
175Type@75ms "ls "
176Type@120ms "--all"
177Enter
178Sleep 1.8s
179Type@90ms "vev "
180Sleep 150ms
181Type@80ms "attach "
182Type@140ms "local"
183Enter
184Sleep 2.2s
185Sleep 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