4. The in3 intermediate data structure

In3 is an intermediate language. The goal of the intermediate language is to provide all the content in the right order, in such a way that the output-filters can easily produce the output.

4.1. In3 format

The format of in3 is as follows:
{IN3 TAG}content 

In3 tags are meant to be generated by the in3 pre-processors, but their content should be fairly readable. The following tags are used:

4.1.1. General

tag
Argument
meaning
AUTHOR
name(s)
Name of the authors
COVER
imagefile
Use the image in imagefile as cover
DEBUG level
message
Debugging information. Discarded.
HTML
htmlcode
insert html code only into HTML output.
IMAGE
filename
Include an image here
VIDEO
filename
Include a video here
LINE
Draw a horizontal line
LINK
destination text
Generate a hyperlink, if applicable
LST
text
The line is in fixed on a separate line
MAPSTART
Start a clickable map
MAPPICT
filename
Use the image for the map
MAPFIELD
link coordinates
Create a click-field on the map
MAPEND
End the current map
NOP
No Operation; line is discarded
SET
variable value
Set variable to value
SUBTITLE
text
Create a subtitle for the document
TITLE
text
The title of this document
KEYWORDS
comma separated list
List of keywords for the HTML-header

4.1.2. Headers

HEADER level
text
Header at level with text.
HEADUNNUM level
text
An unnumbered header at level.
APPENDIX
start level 1 from A

4.1.3. Alineas etc.

tag
Argument
meaning
ALINEA
notes flag
start of a new alinea; 0:no notes, 1:leftnote, 2:sidenote, 3:both
ALINEAEND
End of alinea
LEFTNOTE
leftnote text
start of the left note part
LINEBREAK
Forced line break
NOTE
text
Footnote
SIDENOTE
text
Sidenote

4.1.4. Tables and Lists

tag
Argument
meaning
LISTALPHAEND
level
End alpha list
LISTALPHASTART
level
Start a alpha-list
LISTALPHAITEM
text
alpha list item
LISTDASHEND
level
End dash list
LISTDASHSTART
level
Start a dash-list
LISTDASHITEM
text
Dash list item
LISTNUMEND
level
End numeric list
LISTNUMSTART
level
Start a numeric-list
LISTNUMITEM
text
numeric list item
LITTERAL
text
text to be outputted as pre-formatted text
TABLECEL
text
Create a table cell with text as content
rs=x
Tag that allows the cell to span rows
cs=x
Tag that allows the cell to span columns
TABLEEND
End of a table
TABLEROW
Start a new table row
TABLEROWEND
End of a table row
TABLESTART
Start of a table

4.1.5. Character formatting

tag
Argument
meaning
TEXTBOLD
text
Text to be written in bold face
TEXTITALIC
text
Text to be written in italic
TEXTUNDERLINE
text
Text to be underlined
TEXTNORMAL
text
Normal text as part of the alinea body

4.2. Additional remarks

There are a number of yet undocumented features. I will try to document them when I have the time..