From c3d0b84b7961ae26d2d654e7120821cc2d83d20d Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Mon, 24 Aug 2026 10:56:05 -0300 Subject: host: the core owns the event loop; every platform becomes a vtable of optional methods --- src/CHANGELOG.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/CHANGELOG.md (limited to 'src/CHANGELOG.md') diff --git a/src/CHANGELOG.md b/src/CHANGELOG.md new file mode 100644 index 00000000..61e670d6 --- /dev/null +++ b/src/CHANGELOG.md @@ -0,0 +1,34 @@ +# Changelog + +## 0.0.1 + +- Version tracking: the compiled version is embedded from build.zig.zon and shown by Changelog. +- New builtins: Changelog, Newtty, and Joincol. +- Markdown tree-sitter highlighting, including nested fenced code blocks. +- `.patch` and `.diff` files are highlighted. +- Coloring dispatch keys off the buffer title. +- Opening a new file only splits into a new column when both panes would be at least 100 columns wide. +- Terminal ANSI colors render only in tty mode; normal mode is a plain editing + view, so an edit can never shift a shell row's colour. +- `New` and `Newcol` open an empty scratch buffer instead of a shell or a + temporary file. Its directory is inherited from the pane it was opened from. +- `Save` on a scratch asks for a path, prefilled with that inherited + directory, and the buffer becomes an ordinary file once written. +- `Save` on a terminal writes its plaintext scrollback to a prompted path and + leaves the pane a terminal. +- A dropped pane's memory outlives its frame, so a pane pointer taken during + that frame stays valid until the next one repairs it. +- The core owns the event loop. Each platform is now a `Host` of optional + function pointers; an unimplemented method falls back to an in-process + default, so a host with no methods at all is still a complete pardes. +- Ctrl-V and Ctrl-Shift-V paste in a tty pane: the default register and the + system clipboard, typed at the program the way a terminal emulator pastes + (bracketed under mode 2004). A paste arriving from the desktop reaches the + shell instead of an edit buffer the pty cannot see. +- The default filesystem is pardes's own source, embedded from an allowlist + (src/source_manifest.zig): what a host with no file method reads, and what + the browser has always read. It replaced a build-time generator that embedded + every tracked .zig file. +- `zig build run-isolated` builds and runs `pardes-isolate`: the same source + with one comptime option, whose host supplies only the terminal. The + filesystem is not disabled in it, it is absent — the libc paths compile away. -- cgit v1.3