Skip to content

fix: the New space field has a caret that keys and clicks move, and a pasted path replaces the prefilled ~/ - #144

Merged
nyxene merged 1 commit into
masterfrom
fix/139-new-space-caret
Oct 25, 2026
Merged

nyxene merged 1 commit into
masterfrom
fix/139-new-space-caret

Conversation

@nyxene

@nyxene nyxene commented Oct 25, 2026

Copy link
Copy Markdown
Contributor

Closes #139

The New space window's folder field kept its caret at the end, so fixing the first characters of a long path meant deleting everything after them; and a pasted full path was appended to the prefilled ~/, giving ~/ ~/dev/... and "no such folder".

  • Left and Right move the caret; typing, Backspace and Delete act at it; a click on the field's text puts the caret there. A long path scrolls only as far as keeps the caret in view.
  • Caret and clicks count screen cells, so wide characters and combining marks (a name Finder stored decomposed) put the caret where it is drawn.
  • A pasted line is trimmed; one starting with / or ~ replaces a field holding no more than the start of ~/ or of the home folder; anything else goes in at the caret.
  • Up, Down, Page Up, Page Down, Home, End and Tab keep their list meanings.
  • Editing is shared with the rename prompt (menu::edit, menu::insert), which behaves as before.
  • The help lists Left/Right for New space and the click in its path.

Checks: scripts/gates.sh passes; tests for caret movement, insert and delete at the caret, clicks in a scrolled path, wide and combining characters, and the paste rules. Checked by hand in a running nerd. An audit passed; its two findings (cell widths, a ~ left by Backspace) are fixed here.

🤖 Generated with Claude Code

… pasted path replaces the prefilled ~/

Left and Right move the caret, typing, Backspace and Delete act at it, and a
click on the field puts it under the pointer; a long path scrolls to keep the
caret in view without moving under a click. The editing is shared with the
one-line prompt (menu::edit, menu::insert). A paste is trimmed; one starting
with / or ~ replaces a field that holds only the ~/ it opened with, or nothing.

Closes #139

Co-Authored-By: Claude <noreply@anthropic.com>
@nyxene
nyxene merged commit c87d53c into master Oct 25, 2026
1 check passed
@nyxene
nyxene deleted the fix/139-new-space-caret branch October 25, 2026 22:01
nyxene pushed a commit that referenced this pull request Oct 26, 2026
Release pull request, maintained by release-please. Merging it creates
the tag and a draft GitHub release; then run `scripts/publish-binary.sh
vX.Y.Z` from a terminal to attach the macOS binary and publish the
release.
---


## [0.18.0](v0.17.1...v0.18.0)
(2026-10-26)


### Added

* an agent learns whom it may write to changed, only in its own
commands' output ([#143](#143))
([14c7f8f](14c7f8f))
* install.sh warns when a folder above nerd can be written by others
([#150](#150))
([b1371bd](b1371bd))
* the Messages matrix shows spaces first and opens a pair of spaces on a
press ([#147](#147))
([f9bccf9](f9bccf9))


### Fixed

* a needs-you row names the pane whose agent waits
([#152](#152))
([e59447d](e59447d))
* a pane under heavy load waits for a live broker, and titles keep
following processes when ps is slow
([#153](#153))
([a475310](a475310))
* a process outside nerd is not told to try again while a pane starts
([#138](#138))
([f97eaa8](f97eaa8))
* a sender outside the pane it names is told why it cannot send
([#136](#136))
([1a6192e](1a6192e))
* an agent pane without its hook is not done on every redraw or pause
([#155](#155))
([9c8ad72](9c8ad72))
* every ability in the plugin install and update question is shown
whole, wrapped under its own start
([#151](#151))
([4a538d3](4a538d3))
* text from the socket or another agent can neither drive a terminal nor
hide a forged frame
([#142](#142))
([af1e606](af1e606))
* the New space field has a caret that keys and clicks move, and a
pasted path replaces the prefilled ~/
([#144](#144))
([c87d53c](c87d53c))
* two panes answering each other are not held after eight turns, and
allow-for-an-hour lets them go on
([#148](#148))
([5d7ac9c](5d7ac9c))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The New space field cannot move its caret, and a pasted path is appended after the prefilled ~/

1 participant