One dialog per thing, and rows dragged into a chapter
A separator had three menu entries — rename, colour, line — plus an input that appeared in the row itself: three shapes of interaction for one small thing, and none of them showed the result. Choosing "dotted" from a list of words is a guess. It is one Edit now, and the dialog draws the line as it will look with every shape drawn beside its name, from the very rules the list draws with: a sample that can disagree with the result is worse than none. A chapter goes the same way — name, mark and colour in one dialog, the same one whether it is being made or changed, with the row drawn at the top. Asked from three entries, getting a new chapter to look right took three visits. The name dialog it used is gone. A row is put into a chapter by dragging it onto it: the chapter lights up and takes what is dropped rather than growing a line above it, since a chapter is a place and not a neighbour. Notes and separators both, and the "+ Separator" inside a chapter goes with it — a second way to make the same thing in a second place is a second thing to keep straight. A link now wears the mark of the note it points at, in the text and in the @ menu. It travels when the note's mark changes, as the label already did. Two alignment faults: a task list's checkbox was nudged down by a fixed 0.35em measured once against one font, so it floated above the line it belonged to — it is centred in a box one line tall now. And the title bar's mark was spaced like the buttons at the far end and grew with its contents, so picking an emoji shifted the title sideways. Fourteen suites green: 374 browser checks, 241 unit tests. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
59844046c4
commit
d68b0775c2
20 files changed
+1185
-594
No files matched your search
@@ -439,8 +439,8 @@ docker compose -f docker-compose.dev.yml up -d --build # must be running
|
||||
| `attachments-lifecycle` | 10 | a picture is kept while any version shows it, and freed once none does |
|
||||
| `conflict` | 10 | a late write wins but the state it buries survives as a version |
|
||||
| `export` | 21 | the downloaded bytes are real Markdown, ZIP and PNG, unpacked and read back |
|
||||
| `organise` | 60 | a hand-made order survives a search; separators hold their place; a note exported and imported comes back whole |
|
||||
| `chapters` | 46 | a filed note stays filed across a sync; the notebook's separators survive a chapter being opened; handles appear only while rearranging |
|
||||
| `organise` | 64 | a hand-made order survives a search; separators hold their place; a note exported and imported comes back whole |
|
||||
| `chapters` | 51 | a filed note stays filed across a sync; the notebook's separators survive a chapter being opened; handles appear only while rearranging |
|
||||
| `offline` | 17 | a cold page load with the network off still opens notes and searches them — and a note made, written and drawn on offline arrives whole once there is a connection |
|
||||
| `tables` | 8 | a long table is broken between its rows, with none left lying across the gap, and no page furniture reaches the stored note |
|
||||
| `sync` | 7 | a PDF written on one device — document, drawing and pinned notes — reaches a second one, which can find it by its contents without opening it |
|
||||
@@ -1010,12 +1010,15 @@ Three rules that keep the two levels honest:
|
||||
the others back untouched.
|
||||
|
||||
A note made while a chapter is open is filed there without being moved. A chapter
|
||||
is **named and coloured when it is created**, unlike a separator: a separator is a
|
||||
line and reads perfectly well unnamed, while an unnamed chapter is a row nobody
|
||||
can tell from the next one. The colour is in the same dialog because it is the
|
||||
same decision — the point of having chapters is that they are different places,
|
||||
and eight named colours tell them apart where twenty near-identical blues would
|
||||
not. Both can be changed later from the chapter's own menu.
|
||||
is **named, marked and coloured in one dialog** — the same dialog whether it is
|
||||
being made or changed, with the row drawn at the top as the list will draw it.
|
||||
Asked one at a time from three menu entries, getting a new chapter to look right
|
||||
took three visits. Its menu therefore holds one *Edit* and one *Remove*.
|
||||
|
||||
**A row is put into a chapter by dragging it onto it.** While rearranging is on,
|
||||
a chapter row takes what is dropped on it and lights up to say so, rather than
|
||||
growing a drop line above it: a chapter is a place, not a neighbour. Notes and
|
||||
separators both go in this way.
|
||||
|
||||
A chapter shows even when the notebook holds nothing else. "Nothing here" is
|
||||
asked of every row, not of the notes alone — asked of the notes, a notebook whose
|
||||
@@ -1113,8 +1116,9 @@ name — chosen from a short searchable list rather than the system emoji keyboa
|
||||
which is a different thing on every machine and offers three thousand pictures
|
||||
for a decision that is "which of these is the invoice notebook". The list is
|
||||
searched by what a thing is *for* ("invoice", "house", "travel"), because nobody
|
||||
hunts a pictogram grid by shape. The same glyph shows in the list and above the
|
||||
editor, so a note is recognised by one sign in both places. A note's mark takes a
|
||||
hunts a pictogram grid by shape. The same glyph shows in the list, above the
|
||||
editor **and in every link pointing at the note**, so it is recognised by one sign
|
||||
everywhere. A note's mark takes a
|
||||
colour too; a chapter's uses the colour the chapter already has.
|
||||
|
||||
**Separators** are lines drawn between notes, optionally named, stored on the
|
||||
@@ -1127,14 +1131,17 @@ divider that cannot move with what it divides is worse than none — and their
|
||||
position is recorded as "how many notes come before me", so they stay put as the
|
||||
notes around them are renamed, edited or opened.
|
||||
|
||||
One press draws the line; it is named afterwards from its own menu, the same way
|
||||
it is renamed. A line reads perfectly well unnamed, so nothing is asked first.
|
||||
From that menu it also takes **its own colour and one of five shapes** — solid,
|
||||
dashed, dotted, double or a thick band. Three lines through one notebook are
|
||||
easier to tell apart when they differ; grey-on-grey they read as the same line
|
||||
repeated. **A chapter can be divided the same way**: its lines carry its id and
|
||||
stay in it, and both places a chapter is shown draw them from one component, so
|
||||
it cannot be divisible in the column and not in the unfolded block.
|
||||
One press draws the line. Everything about it — name, colour, and one of five
|
||||
shapes — is then set in **one dialog** reached by right-click, which draws the
|
||||
line as it will look and draws each shape beside its name. It used to be three
|
||||
menu entries and an input inside the row: three shapes of interaction for one
|
||||
small thing, none of them showing the result. The preview is built from the very
|
||||
rules the list draws with, because a sample that can disagree with the result is
|
||||
worse than none.
|
||||
|
||||
**A chapter can be divided the same way**, and a line is put into one by dragging
|
||||
it there — there is no second "+ Separator" inside a chapter, because a second
|
||||
way to make the same thing in a second place is a second thing to keep straight.
|
||||
|
||||
They are shown only in the manual order: in "newest first" the notes would slide
|
||||
past the line on every edit — and **the button that draws one is only there in
|
||||
|
||||
Reference in new issue
Block a user