The Z Language Handbook
Written by David Hanefelt Kristensen, 2004-?

INDEX
 Preface
 Specifications of the Z to HTML translator
 How to use the language
 Tag documentation

PREFACE
The Z Document Language is an easily learned, easy and high-level document writing language.
Z does not try to mimic such industry standards as TeX but offers a fast learning platform for quick document creation, primarily oriented towards the internet, but also usable in print scenarios.

Z is based upon SGML standards and translates cleanly to XHTML 1.1 with the supplied translator, z2html, which is a very fast and portable translator written in the C programming language by the author of Z and this document (David Hanefelt Kristensen)

Z also offers easy conveniences - such as line break escape blocks, dedicated e-mail and document section links plus a very simple tag set - no unneeded elements.



Specifications of the Z to HTML translator
The translator must:
  Translate the Z markup cleantly to compliant XHTML 1.1 (100%)
  Produce warnings and errors if wrong markup is encounted (100%)
  Have a graphical frontend, possibly based on GTK+ (0%)
  Be portable across platforms (100%)
Currently, the Z to HTML translator needs a graphical frontend. Mail the author <northen@gmail.com> if you want to help bringing the power of Z to the wide masses !



How to use the language
The best way to learn a language is by reading language files.
But this is, of course, easy to say for the author of the language ;)

Tutorials should ideally be as short and accurate as possible. This is, of course, made easy because Z, by nature, is a short and accurate language.

EACH Z document must start with a so-called <title> tag. Failing to put the title tag first will generate a translator error and generate invalid code.

The syntax of most tags are like:
<tag name>Tag content</tag name>
The / specifies "This is an ending tag"!


So, following our requirement of adding a title first, our first Z document would look like this:
<title> Hello World </title>
Save the file as tutorial_1.z, open a new terminal (or console, if in Windows) and type:
z2html tutorial_1.z tutorial_1.html


The translator will produce the following text:
Z2HTML 1.3 (Using Z 1.3)
Reading file tutorial_1.z
Writing to tutorial_1.html


Z translator end messages:
Notice: Z code 100valid/Z-conformant
Finished translation.
Lines: 0 | Chars: 27 | Words: 3
Translator by David H. Kristensen (w/contributions)

...and your document will be completely translated. The translation process is very short - the whole Z language handbook takes less than a second to translate on a mid-range PC.

Any well-formed Z document would consist of:
TITLE   tag title
HEADER  tag header
TEXT    tag text
...as in the following example:
<title> Example </title>
<header>Example Header</header>
<text>
This is a bunch of text!
</text>

Save it as tutorial_2.z and hit z2html tutorial_2.z tutorial_2.html in your terminal.
You can view the output in a web browser like Mozilla or Lynx (yes, the z2html output works with text-mode browsers)

You're now ready to explore the examples in ./examples/Z/ and get to learn a bit more about the Z language. You can also read a bit about the individual tags in the next section.



Tag documentation

.line                Horizontal line
.noline            Prevent single line break
bold                 Text emphasis
emllnk             E-mail linkage
farea               Text formatting
header             Document header
image               Image insertion
italic             Text skewing
netlnk             Linkage
nobreaks         Prevent line breaking over multiple lines
sectn               Create sections
sctlnk             Section linkage
title               Document titling/creation


The Z Language Handbook 1.0, Copyright (c) David Hanefelt Kristensen.
Licensed under the GNU Free Documentation License