| Commit message (Expand) | Author | Age |
| *---. | Merge: loose end + msize 64K + docs slimming + docs-audit fixes + monkey-gui ... | Gabriel Schneider | 30 hours |
| |\ \ \ |
|
| | * | | | Newcol shares a column's rows out again when its narrower tags would leave a ... | Gabriel Schneider | 30 hours |
| | |/ / |
|
| * / / | A 9P error past 128 bytes keeps its reason: the path in it gives up its middl... | Gabriel Schneider | 30 hours |
| |/ / |
|
| * | | Only a write logs an err: a refused open or truncation, create or remove, or ... | Gabriel Schneider | 30 hours |
| * | | A name written whole with no newline is checked with its write, as the docs n... | Gabriel Schneider | 30 hours |
| * | | An open's writes in a row to one place go in as one edit: a 10 MB body write ... | Gabriel Schneider | 30 hours |
| * | | A ctl or exec line with no newline runs with its write and fails it, unless i... | Gabriel Schneider | 30 hours |
| |/ |
|
| * | Every catch unreachable, orelse unreachable and syscall assert outside tests ... | Gabriel Schneider | 30 hours |
| * | A second line written to name is refused EINVAL, in one write or on the same ... | Gabriel Schneider | 30 hours |
| * | A listing freezes at its open, so a read in several chunks never splices two ... | Gabriel Schneider | 30 hours |
| * | Two opens writing one body are separate undo steps, however they interleave | Gabriel Schneider | 30 hours |
| * | A name cut across writes on one open is one name, applied once | Gabriel Schneider | 30 hours |
| * | The writes of one open of data, body or xdata are one undo step | Gabriel Schneider | 30 hours |
| * | Recent lists the files opened lately, closed ones too, and a jump back to a c... | Gabriel Schneider | 30 hours |
| * | An err record's reason that names its file already is not prefixed twice | Gabriel Schneider | 30 hours |
| * | /index shows names as the log does, one line of UTF-8, and a newline in a nam... | Gabriel Schneider | 30 hours |
| * | Every EINVAL a write gets says why; DEL in an exec or look line is a control ... | Gabriel Schneider | 30 hours |
| * | A builtin's Verbose announcement is logged only when it succeeds | Gabriel Schneider | 30 hours |
| * | A pane from pane/new is the session's directory's scratch, not the last activ... | Gabriel Schneider | 30 hours |
| * | A new pane with no room under the last goes last all the same | Gabriel Schneider | 30 hours |
| * | An Edit block cut short through exec is an err, not a msg | Gabriel Schneider | 30 hours |
| * | An a, c or i text with no . line fails the Edit, as an open { does | Gabriel Schneider | 30 hours |
| * | A pane has a tagexec: a word run as a click in its tag | Gabriel Schneider | 30 hours |
| * | The docs give the full-column refusal, an Edit block left open at close, and ... | Gabriel Schneider | 30 hours |
| * | No placement leaves a pane shorter than its tag and two rows | Gabriel Schneider | 30 hours |
| * | A read on a closed pane's event ends ENOENT, and the pane cap is ENOSPC | Gabriel Schneider | 30 hours |
| * | A limit write that fails keeps the limit it had | Gabriel Schneider | 30 hours |
| * | A command line cut across writes runs once whole, and look/exec answer per open | Gabriel Schneider | 30 hours |
| * | The workspace tag has /tagexec, every exec file reads back what it touched, a... | Gabriel Schneider | 30 hours |
| * | A column has a ctl, an exec and an rmdir over 9P, and Restore maps its serial | Gabriel Schneider | 30 hours |
| * | A desktop session holds 64 panes, and every route that finds none free says so | Gabriel Schneider | 30 hours |
| * | Columns are named by stable serials over 9P, as panes are | Gabriel Schneider | 30 hours |
| * | The tree serves the layout: /layout, /tag and /col/<n>/tag | Gabriel Schneider | 30 hours |
| * | A write to a closed pane's file says it is gone, and a terminal says why it t... | Gabriel Schneider | 30 hours |
| * | A truncating write to tag drops the one newline that ends it | Gabriel Schneider | 30 hours |
| *-. | Merge: 9P round 6 + empty columns + render (acme theme, grips, Lift, Motion) | Gabriel Schneider | 30 hours |
| |\ \ |
|
| | * | | A column can be empty, as acme's can; new panes go where acme's makenewwindow... | Gabriel Schneider | 30 hours |
| * | | | A shell that exits under a run answers exit N, and the log says exit before del | Gabriel Schneider | 30 hours |
| |/ / |
|
| * / | A followed log, event or pty/data answers a read inside its last answer from ... | Gabriel Schneider | 30 hours |
| |/ |
|
| * | A lock another open holds fails at once with file in use instead of parking | Gabriel Schneider | 30 hours |
| * | pty/run on a fresh terminal waits for the shell's first prompt instead of ans... | Gabriel Schneider | 30 hours |
| * | Addresses search a line at a time as sam does, say why they fail, and a faile... | Gabriel Schneider | 30 hours |
| * | Focus gives the keyboard only, reads empty while a header has it, and sits in... | Gabriel Schneider | 30 hours |
| * | Inline the one-line helpers in src/ninep at their call sites | Gabriel Schneider | 30 hours |
| * | A root commands file lists every builtin, its argument and which ctl takes it | Gabriel Schneider | 30 hours |
| * | Split control messages by scope: the root ctl takes the session's builtins an... | Gabriel Schneider | 30 hours |
| * | A root focus file names the pane with the keyboard and moves it; a pane's ctl... | Gabriel Schneider | 30 hours |
| * | Answer a held read by its cloud9 ticket, refuse a second, and say a pane shut... | Gabriel Schneider | 30 hours |
| * | A pane's ctl takes acme's lock and unlock | Gabriel Schneider | 30 hours |
| * | Keep what each open holds in one table of open records | Gabriel Schneider | 30 hours |