<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pardes.git/test/snapshots/tutor.golden, branch main</title>
<subtitle>Pardes</subtitle>
<id>https://git.0x4200.cafe/pardes.git/atom?h=main</id>
<link rel='self' href='https://git.0x4200.cafe/pardes.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/'/>
<updated>2026-10-01T18:48:24Z</updated>
<entry>
<title>The tutor opens with its title alone, and the slogan lines go: setup's opening, the guide's and reference's "carry" framings, the tutor's "Two carry the rest"</title>
<updated>2026-10-01T18:48:24Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-10-01T18:48:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=3c37c7c5c4516320819ed5cfeb95d590a4187f4a'/>
<id>urn:sha1:3c37c7c5c4516320819ed5cfeb95d590a4187f4a</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>The guide answers a first session: n walks a build's errors from its command pane, a finished one is already normal, why make wants the project root, opening beside, a builtin's argument by mouse, 12G, and SPC ? is Help everywhere; the tutor's tagline and button names match the site, and the cheatsheet's tree gains data, look and exec</title>
<updated>2026-10-01T18:42:33Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-10-01T18:40:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=9b947777a2f693d10da1101c3eab4af3a5ef5a10'/>
<id>urn:sha1:9b947777a2f693d10da1101c3eab4af3a5ef5a10</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Scripts find the session as m=\$PARDES_MOUNT, else 9p; SPC q quits; upper keeps a selection's newline and its tag words once; the reference takes line files, init errors, dumps, dials and Save on +Tutor</title>
<updated>2026-10-01T15:31:48Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-10-01T15:31:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=beb895a93f5320e3b98d66a6c18528de9a2ec37b'/>
<id>urn:sha1:beb895a93f5320e3b98d66a6c18528de9a2ec37b</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>The docs give back the day-one lines the trim cut, the tutor becomes exercises on a +Tutor copy, the README builds the GUI and says what a terminal needs, and Shift-Esc says it needs the kitty keyboard protocol</title>
<updated>2026-10-01T15:24:31Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-10-01T14:03:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=d3638abbb3d177ea08beed3b09cd9682b3732daf'/>
<id>urn:sha1:d3638abbb3d177ea08beed3b09cd9682b3732daf</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>The tutor follows the guide's order, points at its sections, and no longer teaches $ as line end or the terminal tag's old words; a test checks the words, paths, chords and tags it names</title>
<updated>2026-10-01T03:12:17Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-10-01T02:04:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=f058514afb2f0e62a46158dc8c361c99ecd5149c'/>
<id>urn:sha1:f058514afb2f0e62a46158dc8c361c99ecd5149c</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>The Tutor pane is named +Tutor in the session's directory, not /Tutor</title>
<updated>2026-10-01T03:12:17Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-09-30T14:37:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=e61cc19e5d60403f721338f61e62a2e5569c9846'/>
<id>urn:sha1:e61cc19e5d60403f721338f61e62a2e5569c9846</id>
<content type='text'>
Every other generated pane is named `&lt;dir&gt;/+&lt;Name&gt;`: +New, +Errors, the
outputs. Tutor alone was a bare `/Tutor`, a real path at the root, so a Save
would try to write there, and /index listed it as if it were a file. A scan
of the other generated panes found no other bare absolute name. The three
snapshot goldens that show the Tutor tag were re-recorded by name (tutor,
builtins, leader).

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Config opens the startup file, DumpConfig the settings report, and the workspace tag reads Dump Themes Config Debug Exit</title>
<updated>2026-10-01T03:12:17Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-09-30T01:27:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=d4960472375ea68f709c56a677d8a37571419ff7'/>
<id>urn:sha1:d4960472375ea68f709c56a677d8a37571419ff7</id>
<content type='text'>
Config (SPC f c) opens init, found as the settings report finds it
(opts.startup_config_path: $XDG_CONFIG_HOME/pardes/init or
~/.config/pardes/init, and the macOS and Windows paths config.md gives). A
pane that already holds it is gone to instead; a file on disk is looked at;
with none, an empty pane is named for it, and Save makes its directory and
any above it first (File.make_dirs, fs.makeDirs) before writing. Without a
configuration directory it says so and opens nothing.

The report Config used to open, the startup path and every live setting, is
DumpConfig, in a +DumpConfig pane. No alias keeps the old meaning.

The workspace tag's default words put Themes where NextColor was, NextColor
staying a builtin, and Config beside it. A tag the user edited is kept as it
was: a dump stores only an edited one (topbar_custom), and a restore puts
back only that.

theme.snap types NextColor onto the workspace tag to click it, and tagnav's
walk back to Dump takes five long-word steps. The rest of the re-recorded
goldens differ in the workspace words and their widths only.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>A middle or right sweep over a column's or the workspace's tag runs or looks for what it swept, as a pane tag's does</title>
<updated>2026-10-01T03:12:17Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-09-30T01:21:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=dfa5bd4d413504a6afff414962c4de70ab093af0'/>
<id>urn:sha1:dfa5bd4d413504a6afff414962c4de70ab093af0</id>
<content type='text'>
Both headers acted on the press: a middle or right press ran, or looked
for, the word under it (or the header's selection when it was on that) at
once, so a drag had nothing left to do. A sweep of `echo SWEPT` in a column
tag ran a bare `echo`. They have done so since the headers were drawn apart
from the panes; it is no regression, and the -l/Restore allocator fix
(ompukopz) does not touch it.

Now a press on a header holds a HeaderSweep (the column by its serial, or
the workspace), which the drag extends, held to the header's row and text
as a pane tag's sweep is. It is painted in its button's tint meanwhile, and
the release runs what it swept in that header's context; a release that has
not moved runs the word or selection a click always did. The other of
middle and right cancels it (acme 2-3/3-2); the select button is inert, as
a header's command already takes the held selection as its argument.

Running on the release, a builtin from a header is announced as one from a
pane tag is: the press used to set the announcement and the release clear it
at once. find, restore, theme, topbarexec, ttyhelp, tutor and windowops
re-recorded for that badge alone.

headersweep.snap sweeps the column and workspace tags with the middle
button and a word part with the right one, and cancels a sweep;
headersweep-restored.snap sweeps both after Dump and Restore.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>A terminal's Tty word names its shell, Tty+fish, and a click on it opens another</title>
<updated>2026-10-01T03:12:15Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-09-28T17:28:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=010b123a88aa5278c499f83098c00bdbdb0093ce'/>
<id>urn:sha1:010b123a88aa5278c499f83098c00bdbdb0093ce</id>
<content type='text'>
A terminal's tag said Tty whatever shell it ran. The host's acknowledgement
of the shell it forked now sets the word to Tty+&lt;shell&gt;, tinted like the tag's
name. Word+arg is taken as Word arg, one word a tag can hold and a click can
take whole (+ is a word character), so Tty+fish opens a terminal on fish, as
Tty fish does; Tty takes the shell as its argument, which the host forks for
that pane instead of the configured one. Every snapshot whose screen shows a
terminal's tag changes: 69 goldens, re-recorded by name, whose 297 changed
lines are all Tty becoming Tty+bash (the harness runs bash), the cursor
columns and style spans that moved with it, or that text cut at a pane's
width.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Exit quits and Kill stops commands, as in acme</title>
<updated>2026-10-01T03:12:14Z</updated>
<author>
<name>Gabriel Schneider</name>
<email>gbrls@0x4200.cafe</email>
</author>
<published>2026-09-28T14:22:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0x4200.cafe/pardes.git/commit/?id=1c3842f136b9f98fae784559ec12d66d629c5909'/>
<id>urn:sha1:1c3842f136b9f98fae784559ec12d66d629c5909</id>
<content type='text'>
Kill quit the editor, which in acme is Exit; acme's Kill stops the
commands it started. Exit now quits as acme's does (exec.c, rowclean):
it refuses once, naming each pane with unsaved text, and quits when
asked again with nothing edited since (a small scratch is not asked
about). Kill, bare or with names, stops the commands pardes typed into a
terminal (an exec, a middle click, a pty/run) while their shell's marks
say they run, by SIGTERM to the terminal's foreground job, never to the
shell (acme posts the kill note, which terminates). Both are session
builtins; the topbar's Kill becomes Exit, same width, and every golden's
topbar row changed by exactly that word (checked line by line); the
builtins script scrolls one more row for the index's new line.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
