summaryrefslogtreecommitdiff
path: root/docs/fs.md
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-28 11:22:53 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:14 -0300
commit1c3842f136b9f98fae784559ec12d66d629c5909 (patch)
tree9a53e64542e191b717052dbe5b5cd79cfd2c0754 /docs/fs.md
parent5cf50930dee214fb641bb95bbf8639b8f76930d9 (diff)
downloadpardes-1c3842f136b9f98fae784559ec12d66d629c5909.tar.gz
pardes-1c3842f136b9f98fae784559ec12d66d629c5909.zip
Exit quits and Kill stops commands, as in acme
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 <[email protected]>
Diffstat (limited to 'docs/fs.md')
-rw-r--r--docs/fs.md13
1 files changed, 10 insertions, 3 deletions
diff --git a/docs/fs.md b/docs/fs.md
index af57a468..3b49105d 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -103,9 +103,16 @@ on a window's ctl and webfs and upas/fs keep session settings on a root ctl.
Each builtin declares its scope in src/builtins.zig (`scope = .session`;
every setting is one, the rest act on a pane). `/ctl` takes the session's
builtins, one a line, at whichever pane has the keyboard as each runs --
-`Newcol`, `Dump`, `Mount name dial`, `Theme ink`, `Verbose off`, and `Kill`,
-which **quits the editor** (acme's Kill only stops commands; pardes's is
-acme's Exit) --
+`Newcol`, `Dump`, `Mount name dial`, `Theme ink`, `Verbose off`; `Exit`,
+which quits the editor as acme's does (it refuses once, naming each pane with
+unsaved text, `<name>: Modified`, and a second `Exit` with nothing edited
+since quits; a scratch under 100 bytes is not asked about); and `Kill`, which
+does not quit but stops commands, as acme's does: bare, every command pardes
+started, and `Kill make ls`, those whose line begins with one of the words. A
+command pardes started is a line it typed into a terminal (a word written to
+`exec`, a middle click on one, a `pty/run`), from its shell's start mark (C)
+to its end mark (D); Kill sends its foreground job SIGTERM -- acme posts the
+"kill" note, which ends a process -- and never signals the shell itself --
and reads every setting there is, one a line, in the words a write of it
takes (`Verbose on`, `WindowOpacity 70`, `PanelSlide off`, `DumpDir` bare
for the default directory, `LocationsConfig ...`), so writing what it reads