ITTF Documents are the source files of a Wizzi production
1 html
2 body
3 ul
4 li
5 a The Wizzi Factory
6 href https://stfnbssl.github.io/wizzi
ITTF stands for Indented Text Tree Format, a human-friendly text format for representing a tree data structure of node names and values.
Every line is a node consisting of a name-value pair. The name is the first string of chars of the line and is separated from the value by a space or a tab.
Child nodes are indented to their parent.
ITTF Document files can include or mix others ITTF Document files, thereon an ITTF Document may consist of one main document and many fragment documents.
Mixed fragments can receive parameters and my have hook nodes where to append child nodes of the merger document.
Main document that includes a fragment.
1 html
2 body
3 $include footer
The root node can be a mix node.
Root node that mixes its container.
1 layout( Welcome to my site )
2 $append appbar
3 ul
4 $foreach item in menulist
5 li
6 a ${item.name}
7 href ${item.path}
8 . wrapper
9 . content
Sample container
1 html
2 head
3 body
4 header
5 $hook appbar
6 section
7 $hook
Sample 'mixable' fragment.
1 li
2 $params text, href
3 a ${text}
4 href ${href}
Included fragments are inserted as is and cannot receive parameters.
A sample 'includeable' fragment.
1 div License MIT
2 span copy Stefano Bassoli.
Document file name and extension
An ITTF document must have extension '.ittf' and the extension must be preceded by '.' plus the name of the Wizzi Schema that typifies the document. For eample `index.js.ittf`.