| Commit message (Expand) | Author | Age |
| ... | |
| * | /index shows names as the log does, one line of UTF-8, and a newline in a nam... | Gabriel Schneider | 27 hours |
| * | Every EINVAL a write gets says why; DEL in an exec or look line is a control ... | Gabriel Schneider | 27 hours |
| * | A name write is one name, refused with its reason otherwise; a log record is ... | Gabriel Schneider | 27 hours |
| * | A rename alone does not make a pane dirty | Gabriel Schneider | 27 hours |
| * | A name written with a blank at either end is refused, not quietly trimmed | Gabriel Schneider | 27 hours |
| * | A pane from pane/new is the session's directory's scratch, not the last activ... | Gabriel Schneider | 27 hours |
| * | A chorded record written back with its two follow-ups runs once, with its arg... | Gabriel Schneider | 27 hours |
| * | A pane has a tagexec: a word run as a click in its tag | Gabriel Schneider | 27 hours |
| * | A chorded exec an event reader holds is told its argument, and runs with it | Gabriel Schneider | 27 hours |
| * | +Errors with no room anywhere logs its text rather than fail the Edit | Gabriel Schneider | 27 hours |
| * | addr reads empty after a failed address instead of failing | Gabriel Schneider | 27 hours |
| * | A limit write that fails keeps the limit it had | Gabriel Schneider | 27 hours |
| * | Addresses snap to runes, not grapheme clusters | Gabriel Schneider | 27 hours |
| * | Columns are named by stable serials over 9P, as panes are | Gabriel Schneider | 27 hours |
| * | The tree serves the layout: /layout, /tag and /col/<n>/tag | Gabriel Schneider | 27 hours |
| * | A write to a closed pane's file says it is gone, and a terminal says why it t... | Gabriel Schneider | 27 hours |
| * | A truncating write to tag drops the one newline that ends it | Gabriel Schneider | 27 hours |
| *-. | Merge: 9P round 6 + empty columns + render (acme theme, grips, Lift, Motion) | Gabriel Schneider | 27 hours |
| |\ \ |
|
| | * | | A column can be empty, as acme's can; new panes go where acme's makenewwindow... | Gabriel Schneider | 27 hours |
| * | | | pty/status reads the pty's size as winsize set it, on a line of its own | Gabriel Schneider | 27 hours |
| * | | | A replace through data or body, truncate then write, is one undo step | Gabriel Schneider | 27 hours |
| * | | | Writes made under mark 0 are one undo step, and no history is lost | Gabriel Schneider | 27 hours |
| |/ / |
|
| * | | A shell's > on addr no longer resets it, so echo /re/ > addr searches on | Gabriel Schneider | 27 hours |
| * | | A malformed flag write reads as EINVAL through a mount again | Gabriel Schneider | 27 hours |
| |/ |
|
| * | Errors are said in words, and a refusal names what it takes | Gabriel Schneider | 27 hours |
| * | A terminal's body stats as long as it reads | Gabriel Schneider | 27 hours |
| * | An address searches back after a minus, and a range ending before its start i... | Gabriel Schneider | 27 hours |
| * | Addresses search a line at a time as sam does, say why they fail, and a faile... | Gabriel Schneider | 27 hours |
| * | Truncating data or xdata deletes only the addressed range, not the whole body | Gabriel Schneider | 27 hours |
| * | Inline the one-line helpers in src/ninep at their call sites | Gabriel Schneider | 27 hours |
| * | Let the keyboard reach a tag's path, read-only | Gabriel Schneider | 27 hours |
| * | Let the tag's undo bring back what a 9P truncate cleared | Gabriel Schneider | 27 hours |
| * | Let a tag's computed prefix bring its own separating space | Gabriel Schneider | 27 hours |
| * | File the tag code into tagline.zig and draw tags beside bodies | Gabriel Schneider | 27 hours |
| * | Make a pane's tag a Text edited with the body's own keys | Gabriel Schneider | 27 hours |
| * | Give a pane's body its own Text holding the cursor, selections, mode and undo | Gabriel Schneider | 27 hours |
| * | Move exec out of pardes.zig into exec.zig | Gabriel Schneider | 27 hours |
| * | Move looking out of pardes.zig into look.zig | Gabriel Schneider | 27 hours |
| * | Answer a held read by its cloud9 ticket, refuse a second, and say a pane shut... | Gabriel Schneider | 27 hours |
| * | A pane's ctl takes acme's lock and unlock | Gabriel Schneider | 27 hours |
| * | Keep what each open holds in one table of open records | Gabriel Schneider | 27 hours |
| * | Keep a pane's filesystem state on the Pane instead of a slot-indexed table | Gabriel Schneider | 27 hours |
| * | Run a line at a terminal's prompt through pty/run and read how it ended | Gabriel Schneider | 27 hours |
| * | Wake reads waiting on /log, event and pty/data; one reader per consuming file... | Gabriel Schneider | 27 hours |
| * | Make a pane by opening /pane/new, and a Plan 9 idiom pass | Gabriel Schneider | 27 hours |
| * | Plan 9 idiom for the control filesystem, and the regressions a624a56 left | Gabriel Schneider | 27 hours |
| * | Flatten the 9P control tree and move it out of fs.zig | Gabriel Schneider | 27 hours |