Skip to content

Make the editor read as the manuscript, insert figures and tables, list problems, and resume from home - #18

Merged
callumalpass merged 7 commits into
mainfrom
ux/writing-surface
Oct 6, 2026
Merged

callumalpass merged 7 commits into
mainfrom
ux/writing-surface

Conversation

@callumalpass

Copy link
Copy Markdown
Contributor

Five UX changes to Writer, each in its own commit:

  • The editor reads like the manuscript. Citations show who they cite (`Darwin, 1842`), cross-references what they point to, footnote markers their numbers, labels as small tags; heading, emphasis and link marks are hidden; figures, tables, code fences and display math draw as blocks. The line the cursor is on, and any block the selection touches, shows the Markdown exactly as written, so nothing is hidden where you type. Hover and Mod-click work on the chips. Off switch under Editor at the end of Settings (and in the palette).
  • Figures, tables and equations have an insertion flow. The palette inserts a figure from an image (stored in the collection via a new backend `writeFile`, labelled, caption selected), a table, an equation, a cross-reference (opens the label completion) and a footnote. Pasting or dropping an image does the same.
  • Problems list under the editor. The top-bar pill toggles a strip with each problem's record and line; it stays open while they are fixed. While a typed line is still held back the bar says "Checking…" rather than "No problems".
  • Home resumes work. A continue card for the manuscript opened last with an optional word goal (browser-local), and a list of text typed but not yet saved, with a Review action.
  • Smaller things. Authors are rows of name and affiliation with reorder and remove; "Join hard-wrapped lines" moves from the More menu to the editor preferences; on phones Export moves into the More menu; the completion list shows whole rows.

Verified in headless Chromium on the demo: `pnpm check`, the baseline suite (32 steps) and the reliability suite (21 steps) pass. The browser suite now targets the chips and opens the problems list only when closed.

Backends can write a file (Connect uploads it, the demo keeps it in
memory); the workspace stores an image beside the manuscript's other
figures, tells the compiler at once, and hands the editor object URLs
for images it has loaded, so figures can be drawn where they are written.
Citations show who they cite, cross-references what they point to,
footnote markers their numbers, labels as small tags; headings,
emphasis and links lose their marks; figures, tables, code fences and
display math draw as blocks. The line the cursor is on, and any block
the selection touches, shows the Markdown as written. Hover and
Mod-click resolve a chip's key through the syntax tree, since a chip
has no positions of its own. Off, the editor shows the source everywhere.
The command palette inserts a figure from an image (stored in the
collection, with a label and its caption selected), a table, an
equation, a cross-reference (opening the label completion) and a
footnote; pasting or dropping an image does the same. Problems list
under the editor with their record and line and stay open while they
are fixed; while a typed line is still being checked the bar says so
rather than "No problems". Settings edit authors as rows of name and
affiliation and keep the editor preferences; on a phone, export moves
into the More menu.
Home remembers which manuscript was opened last and offers to continue
it, with a word goal kept in this browser, and lists any text typed but
not yet saved to the collection with a way to review it.
The browser suite hovers and Mod-clicks the chips the editor now draws,
and opens the problems list only when it is closed.
…and a footnote shortcut

Typing / at the start of a line or after a space lists what can be
inserted, each with the Markdown it stands for; the top bar gains an
Insert button with the same list; Mod-Alt-F adds a footnote. The
command palette draws on the same list.
@callumalpass
callumalpass merged commit 7726237 into main Oct 6, 2026
1 check passed
@callumalpass
callumalpass deleted the ux/writing-surface branch October 6, 2026 09:57
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.

1 participant