Tisty 1.1.0
A document could only be one file. A year of minutes, a book in chapters, a trip
told day by day — all of it went into one long paper, or into a folder full of
loose papers that nothing tied together except their names.
A document can now hold pages. A page is a document like any other — same file
on disk, same ceiling, same way out — with one thing that sets it apart: it says
which document it belongs to. There is one level and no more. A page holds no
pages, and the refusal comes from the core, not from a dialog: an event arriving
from another machine has passed no window.
A page goes wherever its document goes. It is born in its folder, follows it
when the document is filed elsewhere, is put away and brought back with it, and
is deleted with it. Filing a page on its own does nothing, and neither does
archiving one: they are one thing, and Tisty says so rather than pretending the
move happened. Coming out is deliberate — «Make it a document of its own» —
and the page becomes a document standing exactly where it was already showing.
In the tree a document with pages arrives shut, saying how many it holds. Open
it and the pages hang under it, each with its own quieter mark. Read one and its
document opens itself, so you always see where you are. A document with no pages
looks exactly as it did.
Copying a document copies its pages. Taking one out as Markdown writes the cover
and then each page beside it, numbered in reading order, with the attachments of
all of them. Printing gives the whole book, one sheet per page, and a number at
the foot when there is more than one.
An assistant can write a page, hang a document from another, move a page between
documents and take one back out as a document of its own. It cannot delete,
close or archive anything — that has not changed and will not.
Alongside that, the thing 1.0.8 was going to be.
Every machine carried every attachment. With two computers and a folder that
syncs, a video of half a gigabyte took two gigabytes of disk between them, and
there was nothing to be done about it.
Settings now asks where the big ones should live. Leave it as it is and nothing
changes: every machine carries everything, and any of them opens anything with
the network off. Or keep only what this machine attached, and let the rest
arrive the first time you open it. Or, above 50 MB, leave them in the shared
folder and nowhere else — the video is there when your cloud or your NAS is, and
Tisty says so plainly when it is not.
The last one trades the copy on your disk for the space it was taking. A copy is
only ever let go of after the one in the shared folder is found to hold the same
bytes, and what will not vouch for itself stays where it is. Freeing tells you
how it is going and stops when you say so.
Underneath, an attachment no longer passes through memory to travel: it is read
and written a little at a time and hashed on the way, so a round that carries
half a gigabyte costs fifteen megabytes rather than five hundred.
On a Mac, a file iCloud has taken away is now asked back rather than reported
lost — its markers are recognised for what they are, and what comes back is
checked like anything else. And a file kept in the shared folder has to answer
for its own name before Tisty will open it, which is what the syncing has always
demanded of that folder.
Two smaller things. attach over MCP can keep a file in a document, not only on
a task, which is where a recording or a deck of slides belongs. And the icon
catalogue answers to what an icon draws, in Spanish too: ask for «moto», «puño»
or «ok» and you get the motorcycle, the fist and the thumb, without knowing the
English name anybody filed them under.
The number leaves the 1.0 line because the log does. Events are written at
schema 8, and a machine still on 1.0.x will refuse to read them until it is
updated — refuse them whole, rather than read a page as a loose document and
file it somewhere you never put it. Update every machine that shares a folder
with this one.
What's Changed
- Attachments in the cloud by @rgdevment in #10
- Documents with pages by @rgdevment in #11
Full Changelog: v1.0.7...v1.1.0