| Commit message (Expand) | Author | Age |
| * | slosh: the splash learns colour | user | 2026-08-19 |
| * | slosh: greet an attach with the logo, wearing a random shader | user | 2026-08-19 |
| * | slosh: split app.c into five units, mechanically | user | 2026-08-19 |
| * | slosh: defaults most people can live in, said by shaders | user | 2026-08-19 |
| * | slosh: rename the project from sl0ppty | user | 2026-08-18 |
| * | sl0ppty: aim the top handle at the middle, and stop ruling through the row | user | 2026-08-18 |
| * | sl0ppty: the split arrow belongs on the button | user | 2026-08-18 |
| * | sl0ppty: a horizontal handle gets heavier, not taller | user | 2026-08-18 |
| * | sl0ppty: the middle of a border is the button, not all of it | user | 2026-08-18 |
| * | sl0ppty: ruff format the Python | user | 2026-08-17 |
| * | sl0ppty: clang-format the tree | user | 2026-08-17 |
| * | sl0ppty: a dead pane says what it ran | user | 2026-08-17 |
| * | sl0ppty: a wrapped line is one line when you copy it | user | 2026-08-17 |
| * | sl0ppty: double-click a word to select it | user | 2026-08-17 |
| * | sl0ppty: `set-name target="pane"`, so a script can overrule a program's title | user | 2026-08-17 |
| * | sl0ppty: a --script pane is told no session rather than somebody else's | user | 2026-08-17 |
| * | sl0ppty: a skill for driving it, and the two variables that made one possible | user | 2026-08-17 |
| * | sl0ppty: workspaces, and layouts that write themselves | user | 2026-08-17 |
| * | sl0ppty: `C-a Enter` splits the longer way | user | 2026-08-16 |
| * | sl0ppty: layouts are `*.layout.kdl`, and each loader says which it got | user | 2026-08-16 |
| * | sl0ppty: drag a pane onto a tab | user | 2026-08-16 |
| * | sl0ppty: `C-a >` sends this pane to the next tab | user | 2026-08-16 |
| * | sl0ppty: a pane can change tabs | user | 2026-08-16 |
| * | sl0ppty: the prompt speaks config, not a dialect of it | user | 2026-08-16 |
| * | sl0ppty: `:load` a preset, without a second KDL reader | user | 2026-08-16 |
| * | sl0ppty: a race in the reload test, caught at one in eight | user | 2026-08-16 |
| * | sl0ppty: two tests that were sampling, not asking | user | 2026-08-16 |
| * | sl0ppty: PI is 180 | user | 2026-08-16 |
| * | sl0ppty: sin and cos | user | 2026-08-16 |
| * | sl0ppty: bits | user | 2026-08-16 |
| * | sl0ppty: zero strength is not a pass | user | 2026-08-16 |
| * | sl0ppty: three ways back from a painted pane | user | 2026-08-16 |
| * | sl0ppty: a prompt with a memory | user | 2026-08-16 |
| * | sl0ppty: a pane can set its own shaders | user | 2026-08-16 |
| * | sl0ppty: a reply is never a request | user | 2026-08-16 |
| * | sl0ppty: padding, per side | user | 2026-08-16 |
| * | sl0ppty: sl0ppty --check | user | 2026-08-16 |
| * | sl0ppty: every complaint, and the chords that produced eleven of them | user | 2026-08-16 |
| * | sl0ppty: make docs | user | 2026-08-16 |
| * | sl0ppty: one family of marks for the frame's buttons | user | 2026-08-15 |
| * | sl0ppty: say what the config could not honour | user | 2026-08-15 |
| * | sl0ppty: watch what the config was built from, not just what it was called | user | 2026-08-15 |
| * | sl0ppty: a config can be made of files | user | 2026-08-15 |
| * | sl0ppty: shaders on the chrome, and two keys for the arrangement | user | 2026-08-15 |
| * | sl0ppty: a command palette, on a key you choose | user | 2026-08-15 |
| * | sl0ppty: make the finder a modal, and a picker worth using | user | 2026-08-15 |
| * | sl0ppty: answer the terminal when it is asked how big it is | user | 2026-08-15 |
| * | sl0ppty: decode the PNGs programs actually send | user | 2026-08-15 |
| * | sl0ppty: measure chrome in columns, not characters | user | 2026-08-15 |
| * | sl0ppty: watch the config directory even when it is not there yet | user | 2026-08-15 |