This plugin contains tools to help work with documents that are structured as a hierarchical outline of tiddlers. The structural relationships within the document are expressed as tags that weave the individual tiddlers together.
TiddlyWiki is built on the philosophy that text is easier to re-use and work with if it is sliced up into separate chunks that can be independently manipulated, and then woven back together to make up stories and narratives for publication.
The components within the text slicer plugin include:
* ''the slicer'', a tool that slices up an existing monolithic document according to the headings, lists and paragraphs. It is available as a toolbar button for the browser, or as a command for use under Node.js
* ''document preview column'', a new sidebar on the left that shows the full text of any documents in the wiki and allows individual tiddlers to be opened with a click
* ''exporters'' for exporting the individual documents as HTML files (and for previewing them)
! Slicing Monolithic Documents
The tool can slice any tiddler that can be rendered as HTML, including both WikiText and HTML itself.
Documents created with Microsoft Word will need to be first converted to HTML. The library [[mammoth.js|https://github.com/mwilliamson/mammoth.js]] is recommended for this purpose.
!! Browser
In the browser, you can slice a monolithic document tiddler using the slicer toolbar button.
!! Node.js
The `--slice` command allows a tiddler to be sliced under Node.js:
```
tiddlywiki mywiki --slice SourceDocument --build index
```
! Working with the Document Preview Column
The document preview column appears at the left side of the screen. The content of headings can be collapsed and expanded to help navigation. Clicking on a tiddler opens the corresponding tiddler in the main story river.
Clicking ''Show toolbar'' causes each tiddler be preceded by a toolbar showing the underlying title. It can be edited directly to rename the tiddler. References to the tiddler in the ''tags'' and ''list'' are automatically updated to reflect the change, but note that links to the tiddler will not be automatically changed.
The preview column to be visible, the following theme tweaks should be applied:
* Set [[story left position|$:/themes/tiddlywiki/vanilla/metrics/storyleft]] to ''400px'' (or more)
* It is recommended to also set the [[sidebar layout|$:/themes/tiddlywiki/vanilla/options/sidebarlayout]] to ''fluid-fixed''.
! Exporting Documents
Documents can be saved under Node.js, or previewed in the browser.
!! Browser
To preview a document, locate it in the preview column and click the button labelled "View document". The document will open in plain text in a new window. The window will be automatically updated as you work on the document.
Individual tiddlers are created for each heading, paragraph and list item. They are linked together into a hierarchical outline using TiddlyWiki's tagging mechanism.
For example, consider a tiddler titled ''Example'' containing this simple text:
<<<
! This is a heading
This is a paragraph.
* And the first list item
* Second list item
<<<
It will be sliced up into:
* a tiddler for the overall document
** a tiddler for the heading
*** a tiddler for the paragraph
*** a tiddler for the list
**** and a tiddler for each list item
These tiddlers are bound together using tagging: child tiddlers are tagged with the title of their parent, and the parent tiddler has a ''list'' field that lists each child in the correct order.
Slicing generates the following component tiddlers.
Tiddler titles are generated automatically in most cases (but can subsequently be changed manually). The automatically generated title is made up of concatenating the following elements:
* root text (e.g. ''para'')
* a dash ''-''
* the first few words of the text of the item (up to 40 characters), separated with dashes ''-''
* if necessary, a dash ''-'' and a numerical index to make the title unique
For example, ''para-how-to-use-pentagonal-tiles 23''.
* ''text'': Available for comments about the document
* ''list'': ordered list of tiddlers making up the root level of this document
Note that the relationship between the document and component tiddlers is that the components are listed in the ''list'' field. This differs from the relationship between headings and their components, which use the ''tags'' field of the components to tie them to the heading. The purpose of this difference is to make it possible to clone doument tiddlers without losing the connection to the constituent parts.