| Commit message (Expand) | Author | Age |
| ... | |
| * | | | A pane's question is logged as ask, and answer on its ctl answers it | Gabriel Schneider | 29 hours |
| * | | | A Python block sent to a REPL gets the second Enter that ends it | Gabriel Schneider | 29 hours |
| * | | | A shell that exits under a run answers exit N, and the log says exit before del | Gabriel Schneider | 29 hours |
| * | | | pty/status reads the pty's size as winsize set it, on a line of its own | Gabriel Schneider | 29 hours |
| * | | | A pane tag wraps onto rows and can collapse to one, as acme's does | Gabriel Schneider | 29 hours |
| * | | | A look with a blank in its pattern addresses, file:N selects the line, and a ... | Gabriel Schneider | 29 hours |
| * | | | A key between two clicks makes them two clicks, not a double-click | Gabriel Schneider | 29 hours |
| * | | | A tag no longer marks an unsaved file with *: the grip shows it | Gabriel Schneider | 29 hours |
| * | | | A B1 sweep held past a pane's edge scrolls the body, as acme's frselect does | Gabriel Schneider | 29 hours |
| * | | | Everything a B1 chord does while B1 is down is one undo step | Gabriel Schneider | 29 hours |
| * | | | A double-click selects as acme's does: a word, a line, a bracketed or quoted ... | Gabriel Schneider | 29 hours |
| * | | | Column and workspace tags are one line again, as acme's | Gabriel Schneider | 29 hours |
| |/ / |
|
| * | | Edit runs sam's command language on a pane's body, as acme's Edit does, in on... | Gabriel Schneider | 29 hours |
| * | | A Save the host cannot do fails the 9P write that asked for it, and the log n... | Gabriel Schneider | 29 hours |
| |/ |
|
| *-. | Trial merge: 9P + helix + render | Gabriel Schneider | 29 hours |
| |\ \ |
|
| | | * | Post chain: Shadertoy passes compiled by glslc; Crt, Ripple and Glitch rewrit... | Gabriel Schneider | 29 hours |
| | | * | The GUI draws in tiers from the regions; pane chrome moves with its pane | Gabriel Schneider | 29 hours |
| | | * | One Layer for tags, notices, headers and bodies; a taller tag is one layer of... | Gabriel Schneider | 29 hours |
| | | * | Place every part of the frame once, before painting it | Gabriel Schneider | 29 hours |
| | | * | Step core animation by the shell's clock and sleep to the next wake | Gabriel Schneider | 29 hours |
| | | * | Move the frame into draw.zig and the transitions out of layout.zig | Gabriel Schneider | 29 hours |
| | * | | A selection's other ranges live out of line, made at the second range and fre... | Gabriel Schneider | 29 hours |
| | * | | gw labels the words in view and jumps to the one whose label is typed | Gabriel Schneider | 29 hours |
| | * | | K and Alt-K keep or drop the ranges a regex matches in; Alt-: turns every ran... | Gabriel Schneider | 29 hours |
| | * | | A selection holds up to 1024 ranges on the desktop, 64 on the board | Gabriel Schneider | 29 hours |
| | * | | Q records keys into a register and q types them again; . repeats the last insert | Gabriel Schneider | 29 hours |
| | * | | A tag's edited text stays alive until the next edit, so ms and md in a tag re... | Gabriel Schneider | 29 hours |
| | * | | Registers hold a value per range, and "<reg> names one | Gabriel Schneider | 29 hours |
| * | | | A REPL question's answer goes to the pane its letter offered, or says that on... | Gabriel Schneider | 29 hours |
| * | | | Errors are said in words, and a refusal names what it takes | Gabriel Schneider | 29 hours |
| * | | | A REPL's language is named and found as the syntax table finds one: aliases, ... | Gabriel Schneider | 29 hours |
| * | | | Focus on a closed pane goes to the pane that takes its place, never to the on... | Gabriel Schneider | 29 hours |
| * | | | Text sent to a REPL is plain lines, sent whole or not at all | Gabriel Schneider | 29 hours |
| * | | | A command's exit is told once its output is in, by the pty's state, not a timer | Gabriel Schneider | 29 hours |
| * | | | A click written back to event is done as the click, REPL and all; a REPL's ct... | Gabriel Schneider | 29 hours |
| * | | | Whether an exec came from a body travels with it, so every selection goes to ... | Gabriel Schneider | 29 hours |
| * | | | A 9P request that fills a stillborn scratch's column replaces the scratch bef... | Gabriel Schneider | 29 hours |
| * | | | A restored terminal's tag names neither the REPL it was nor the shell it had | Gabriel Schneider | 29 hours |
| * | | | A REPL takes text only while its program has the terminal | Gabriel Schneider | 29 hours |
| * | | | Tty with a shell that is not there says so, and never sets the caller's shell | Gabriel Schneider | 29 hours |
| * | | | The log's run record carries the whole command line, after the new record of ... | Gabriel Schneider | 29 hours |
| * | | | A command pane echoes its first command as it does the later ones | Gabriel Schneider | 29 hours |
| * | | | A command of several lines keeps its pane's tag to one row, and the tag never... | Gabriel Schneider | 29 hours |
| |/ / |
|
| * | | A terminal bound as a language's REPL takes the execs made on that language's... | Gabriel Schneider | 29 hours |
| * | | Kill signals a command only while it runs, and only the pane it was meant for | Gabriel Schneider | 29 hours |
| * | | A command pane's command is over when its process exits, not when its pty closes | Gabriel Schneider | 29 hours |
| * | | A reused command pane leaves the last program's screen modes before the next ... | Gabriel Schneider | 29 hours |
| * | | Only Tty reads Word+arg as its argument | Gabriel Schneider | 29 hours |
| * | | A spawn names the pane it was made for, so a pane closed and its slot retaken... | Gabriel Schneider | 29 hours |
| * | | A terminal's Tty word names its shell, Tty+fish, and a click on it opens another | Gabriel Schneider | 29 hours |