card versioning?

I am delighted to see innovative applications such as Ginko challenge the simplistic paradigm of a text editor or word processor.

I commonly experience a kind of dilemma while writing in which I consider revising or rearranging a sequence, scene, chapter, even sequence of chapters, to test the effect on the reader’s experience, even though I still want to reserve the option to revert to the earlier structure. In many cases substantial time lapses and structural changes occur before I eventually choose to return to an earlier form.

I begin to consider how Ginko might address a broader range of writing challenges.

Suppose that the writer were considering changes to a card and its descendants, either simply to alter some body text within individual cards or to reorganize the tree structure. What application feature might enable effortless reversal of such changes, without full reversion of the entire document? One could imagine the possibility of freezing a snapshot of a card, by applying some chosen label, so as whenever desired the writer might swap the current document view. Would other writers regard such a feature to be widely useful?

Suppose further that the writer wanted to create a new snapshot of an existing card with the order of the children rearranged, but with all changes to the text of the children being reflected in either view. How might the application support such use? A user feature that offers what in software language would be called a shallow copy might offer a compelling tool for writers seeking fuller power from a desktop application.

The hierarchical model provided by Ginko, as well its clean yet expressive interface and formatted display of MarkDown text, is marvelously helpful to the writer, otherwise constrained by the familiar linear text buffer. And yet each document holds a static view of the text, as though every change a writer makes is guaranteed to reflect more accurately the final version.

I wonder whether other writers have thoughts about what new ideas would help extend the flexibility of the paradigm.