Three small things the docs pass turned up. A search of nothing but punctuation — `!!!`, `--` — gave the FTS query no terms, and the list handler then fell through to browsing with no parent, which answered with the spaces as if they were matches. It now finds nothing. Two spaces could have the same name: the slug was made unique (`work-2`) but the name kept, so the bar showed two pills that read alike and `:space work` picked the first. A new space, a space renamed, and a directory made at the root of the mount are refused when another space has that name in any case or that slug. Folders and documents may still share names; they are told apart by where they sit. A name had no ceiling. A file is called by its name on the mount, where most filesystems stop at 255 bytes, so a document, folder, file or space is now at most 200 characters, checked where one is made or renamed.
4.4 KiB
Spaces and documents
Spaces
A space is a top-level area: diary, work, uni, or whatever you make.
Each has its own tree of folders, its own board and its own search, so work and
uni do not get mixed up.
1…9and0switch to a space by its place in the bar;TabandShift-Tabstep through them.wshows every space at once, with what was last written in each.hjklmove,Entergoes there.:space! <name>makes a space,:name! <name>renames the one you are in, and:rmspaceputs it in the trash with everything in it. Two spaces cannot share a name, whatever the case.:set noboardturns the board off for a space,:set boardback on.
One space has the diary role. It is the diary by role, not by name: rename it and the reminder and the agenda still know which space it is. It cannot be deleted. See The diary.
The tree
Inside a space, folders nest to any depth. The list shows the folder you are in: folders first, then documents and files, grouped by the day they were written.
| key | what it does |
|---|---|
j / k, gg / G |
move, first, last |
l, Enter |
open the document or file, or go into the folder |
h |
up one level |
o |
a new document here, straight into insert mode |
O |
a new folder here |
R |
rename what is under the cursor |
x, dd |
delete it, into the trash |
u |
bring the last delete back |
:cd <folder> walks the tree from the command line (:cd .. goes up, :cd /
to the root of the space), and :mkdir <name> makes a folder.
Moving things
mpicks up the row under the cursor;magain puts it back.Mpicks up the whole folder you are in.- Walk to another folder, in any space, and press
pto drop everything picked up there. Shift-1…Shift-9sends what is picked up, or the row under the cursor, straight to the root of that space.:mv <folder>moves it into a folder here,:mv ..up one level,:mv /to the root.- With a mouse,
Ctrl-click picks a row up andShift-click every row from the cursor to it; drag them onto a folder, a crumb in the bar, or a space.
A move never breaks a link: every document that links to what moved is rewritten to point at its new place. See Writing.
Documents
A document is markdown with a name. It has a real address,
/n/<space>/<folder>/<slug>, which the address bar shows and which can be
linked to from anywhere behind the login.
The line under the title says when it was written and last edited, how many words it has, and how many documents link to it. In the reader:
| key | what it does |
|---|---|
j / k, Ctrl-D / Ctrl-U |
scroll a line, or half a page |
]] / [[ |
the next / previous heading |
gO |
the headings as a list to jump to |
zl / zh |
scroll a wide table or code block sideways |
F |
a letter over every link and button in view; type it to follow |
gh |
earlier versions |
gb |
the documents that link here |
i, a |
edit |
q, Esc |
close |
:stats counts words and lines, :copy puts the whole text on the clipboard,
:export downloads it as a .md file, and :date 2026-10-01 changes the day
it is filed under.
A document made with o and left with neither a name nor a word in it is
removed again when you leave it, so abandoned starts do not pile up.
Tiles
Several documents can be open at once, each in a tile of its own.
LorShift-Enteron a row opens it in a new tile;Enterandlopen it in the focused one.- Tiles share the space the way a tiling window manager does: two side by side, a third splits the newer one, and so on.
Alt-h/j/k/lmoves the focus between tiles, andAlt-hpast the leftmost goes back to the list.Alt-Shift-h/j/k/lmoves the tile itself.gt/gT(or:bn/:bp) cycle through them,:lslists them, and:b <n or name>focuses one.Alt-q(or:close) closes the focused tile,:onlyevery other one, andfmakes the focused tile fill the screen.
Opening a document that is already in a tile focuses that tile rather than opening it twice. Each tile keeps its own scroll position and editor, and each space remembers its tiles. Under 768 pixels wide only the focused tile is shown.


