The outline shows the tree as an indented list: a row per node with its fold marker, tree lines in the parent's color, tags, a ¶ for a body and +N for what a fold hides. zb shows every body under its title, to read a document like a page. j/k go row by row, h/l to the parent and the first child, a click on a marker folds, and titles are edited in their row, rapid entry included. In move mode, j/k swap the node with its siblings, h takes it out a level and l puts it under the one above. The Note view shows one node at full size, as parts: the title, the tags, the body, each link and each child. j/k step through them, Enter or i edits the part (or goes to that link or child), and h/l turn the page to the sibling before or after. Bodies and tags are edited with the same editor as titles: Enter starts a line in a body, Tab types spaces, and tags that don't parse come back as they were. cc, C and s now start typing on an empty line too, as in vim. Panes split the screen the way vim's windows do (Ctrl-w v s h j k l w c o =, :split, :vsplit, :only), each in a box with its view and document, and any pane can show any open document (gt, gT, :b, the documents picker, a click on the document bar). The status bar has two lines: the mode, the view, the breadcrumb or a message, the keys typed; then key hints for what you're doing, which <Space>w hides with which-key. Popups are a mode of their own, built on one list: ? lists every key and command, / searches it and Enter runs what you pick; the right-click menu lists what you can do with a node (with the keys that do the same) or adds a new idea on the empty canvas; the pickers set a node's color, border, style or tags. K opens the body in a card beside the node, where i edits it in place. The example now opens two documents (the garden, and the kitchen its portal leads to) and its tests drive all of the above end to end. Co-Authored-By: Claude Opus 5.5 <[email protected]>
44 lines
951 B
Plaintext
44 lines
951 B
Plaintext
// cumulus document. Hand edits are fine: cumulus reloads it when it changes.
|
|
(
|
|
format: 1,
|
|
uid: "c01d5e7aa0f3b912",
|
|
root: 1,
|
|
nodes: [
|
|
(
|
|
id: 1,
|
|
title: "Kitchen",
|
|
pos: (0, 6),
|
|
color: "yellow",
|
|
),
|
|
(
|
|
id: 2,
|
|
parent: 1,
|
|
title: "Herbs on the sill",
|
|
pos: (16, 2),
|
|
color: "green",
|
|
),
|
|
(
|
|
id: 3,
|
|
parent: 2,
|
|
title: "Basil",
|
|
pos: (40, 1),
|
|
),
|
|
(
|
|
id: 4,
|
|
parent: 2,
|
|
title: "Mint, in its own pot",
|
|
pos: (40, 4),
|
|
body: "It spreads everywhere if it can.",
|
|
),
|
|
(
|
|
id: 5,
|
|
parent: 1,
|
|
title: "Compost bin",
|
|
pos: (16, 9),
|
|
tags: "#todo",
|
|
body: "Under the sink.
|
|
Empty it on Sundays.",
|
|
),
|
|
],
|
|
)
|