The caret goes where you were looking.

A permanent URL for this exact release.

Published 5 September 2026. The notes, known limits, build number, source commit, and the file itself stay attached to version 1.9.0.

Read every release
Linelark Notepad Studio

What shipped in 1.9.0.

Two view options that had been waiting since the beginning

  • Virtual space (View ▸ Virtual Space) lets the caret stand past the end of a line. The reason it earns its place is vertical: ↓ through a ragged block keeps the column it started in instead of collapsing onto the end of every short line it crosses and arriving somewhere to the left.
  • Only the drawing moves. The selection stays a range over characters that exist, so undo, the tools, the find bar and Claude never see a position that does not. Typing is what makes the columns real — padded with spaces and never tabs, whatever your indentation preference says, because a tab is a jump to the next tab stop and lining up is the whole point.
  • Wrap indicators (View ▸ Show Wrap Indicators) put a where the editor broke a line because it ran out of width, so a long line reads as one line rather than as several short ones. Drawn just after the text rather than out at the right margin: this editor’s wrapped width follows the window, and a full-width indicator column sits a long way from the line it belongs to on a wide screen.

A last group in the toolbar, for the app itself

  • Behind its own divider: starting and stopping Claude, with the title carrying what the conversation has cost, and a star that opens the App Store listing with the review sheet already up. Neither is about the text in front of you, so nothing you reach for while editing sits after them.

Claude’s model list stops depending on this app’s release cycle

  • What goes stale about a command-line agent is not its protocol, which moves about once a year, but the model aliases and effort levels it accepts, which move monthly. Those were compiled in, so a model gaining a name cost a rebuild, a notarization and — for the App Store edition — a review: days of latency on a one-word change.
  • They are published beside the plugin catalog now and fetched the same way, cached on disk, falling back to what shipped in the binary when there has never been a fetch. What makes it safe to take instructions about a subprocess from the network is that a profile carries values, never commands: the executable and the flags stay compiled in, and an alias must begin with an alphanumeric, so nothing that looks like an option can become one.

Two things that were wrong

  • ⌘F opened the find bar without giving it the keyboard, so it had to be followed by a click.
  • A window showing a plugin panel could spin at 100% of a core inside a single layout pass — no drawing, no events answered, nothing in the log. The window’s geometry and the panel’s lazy stack were each invalidating the other; the panel’s nodes are drawn eagerly now, which removes one of the two.

Known limits in 1.9.0

  • Virtual space is off under word wrap, where a logical line is several rows and a column is not a place on screen. It is a preference, and it is off until you switch it on.
  • A rectangular selection still stops at the end of each line, so virtual space cannot be used to select a column past the ends of short ones. That needs padding inserted per line on edit rather than a caret that is only drawn elsewhere.
  • The published model list can only add names the agent already understands. A genuinely new protocol shape — a new message type wanting new UI, a second transport, a different permission flow — still needs a build.
  • The Claude panel remains Studio only: it spawns a process and opens a socket, so the sandboxed App Store edition has none of it.
  • Code folding and recorded macros remain roadmap items with no promised date.
Artifact SHA-25680ebf5f64374801800bbb4bc1b6be37a72de97d90558243d285322a8505e90d3

Source commit d9fcf27ed5b044f8336872130edaa4d200efa663