| Commit message (Expand) | Author |
| 2026-08-30 | layout: a float sized but not positioned is centred, per axis | user |
| 2026-08-29 | graphics: a frame the client never got must be said again | user |
| 2026-08-28 | windows watcher: rebuild the watch set instead of freezing it | Peter Geissler |
| 2026-08-28 | path: a directory ends at either separator on Windows | Peter Geissler |
| 2026-08-28 | path: an absolute path does not always start with a slash | Peter Geissler |
| 2026-08-28 | ctrl_d_exits: Ctrl-D at a prompt, where the tty cannot do it | Peter Geissler |
| 2026-08-28 | windows: fall back to `edit`, not to a notepad window | Peter Geissler |
| 2026-08-28 | windows: a native port, on ConPTY and AF_UNIX | Peter Geissler |
| 2026-08-27 | pty: open the slave before the fork, so a pane's size reaches itv0.1.1 | Peter Geissler |
| 2026-08-27 | selection: drag past an edge scrolls the viewport under it | user |
| 2026-08-26 | a client that stops reading must not stop the session | Peter Geissler |
| 2026-08-26 | macos: the kernel still knows, it just spells /proc differently | user |
| 2026-08-25 | compact: shared borders instead of gaps (D23) | user |
| 2026-08-24 | slosh: the config watcher speaks kqueue on macOS | user |
| 2026-08-22 | slosh: a pane arriving in a zoomed tab ends the zoom | user |
| 2026-08-22 | slosh: refuse to attach to the session this pane is inside | user |
| 2026-08-22 | slosh: paint the padding ring, so a float cannot be seen through | user |
| 2026-08-21 | slosh: put-away panes are miniature pane frames | user |
| 2026-08-21 | slosh: minimized panes wear buttons in the strip | user |
| 2026-08-21 | slosh: bell_mark defaults to "[!]" | user |
| 2026-08-20 | slosh: the scrolled edge fade earns its name | user |
| 2026-08-20 | slosh: M10c, the memory -- floats survive being written down | user |
| 2026-08-20 | slosh: OSC 8 hyperlinks pass through the compositor | user |
| 2026-08-20 | slosh: floating panes and the drop grammar | user |
| 2026-08-19 | parsers: fix seven bugs found by fuzzing | user |
| 2026-08-19 | slosh: layout files are *.layout, not *.layout.kdl | user |
| 2026-08-19 | slosh: the logo flies into place -- a particle engine, statelessly | user |
| 2026-08-19 | slosh: the splash colours glyphs, never backgrounds | user |
| 2026-08-19 | 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-18 | 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-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-16 | 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 |