1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-07-03 07:24:58 +03:00
inform7/docs/indoc/M-vai.html
2020-08-27 15:50:24 +01:00

444 lines
32 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Volumes and Instructions</title>
<link href="../docs-assets/Breadcrumbs.css" rel="stylesheet" rev="stylesheet" type="text/css">
<meta name="viewport" content="width=device-width initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-gb">
<link href="../docs-assets/Contents.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Progress.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Navigation.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Fonts.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Base.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Colours.css" rel="stylesheet" rev="stylesheet" type="text/css">
</head>
<body class="commentary-font">
<nav role="navigation">
<h1><a href="../index.html">
<img src="../docs-assets/Inform.png" height=72">
</a></h1>
<ul><li><a href="../compiler.html">compiler tools</a></li>
<li><a href="../other.html">other tools</a></li>
<li><a href="../extensions.html">extensions and kits</a></li>
<li><a href="../units.html">unit test tools</a></li>
</ul><h2>Other Tools</h2><ul>
<li><a href="../inblorb/index.html">inblorb</a></li>
<li><a href="index.html"><span class="selectedlink">indoc</span></a></li>
<li><a href="../inpolicy/index.html">inpolicy</a></li>
<li><a href="../inrtps/index.html">inrtps</a></li>
</ul><h2>Foundation</h2><ul>
<li><a href="../../../inweb/docs/foundation-module/index.html">foundation</a></li>
</ul>
</nav>
<main role="main">
<!--Weave of 'Volumes and Instructions' generated by Inweb-->
<div class="breadcrumbs">
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../other.html">Other Tools</a></li><li><a href="index.html">indoc</a></li><li><a href="index.html#M">Manual</a></li><li><b>Volumes and Instructions</b></li></ul></div>
<p class="purpose">Dual- versus single-volume mode, and how to write instructions files.</p>
<ul class="toc"><li><a href="M-vai.html#SP1">&#167;1. Model</a></li><li><a href="M-vai.html#SP2">&#167;2. Project instructions</a></li><li><a href="M-vai.html#SP3">&#167;3. Durham Core metadata</a></li><li><a href="M-vai.html#SP4">&#167;4. Targets</a></li><li><a href="M-vai.html#SP5">&#167;5. Symbols</a></li><li><a href="M-vai.html#SP6">&#167;6. Other instructions</a></li><li><a href="M-vai.html#SP7">&#167;7. Miscellaneous settings</a></li></ul><hr class="tocbar">
<p class="commentary firstcommentary"><a id="SP1" class="paragraph-anchor"></a><b>&#167;1. Model. </b>Conceptually, an Indoc project has either one or two volumes. The source for
each volume is a single UTF-8 encoded plain text file. In the core Inform
repository, there are two volumes, with the files being
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> Documentation/Writing with Inform.txt</span>
<span class="plain-syntax"> Documentation/The Recipe Book.txt</span>
</pre>
<p class="commentary">These are independent books, with individual titles. It would seem simpler
just to make them two different Indoc projects, but in dual-volume mode,
Indoc can generate joint contents pages, and provide crosswise HTML links
between the two volumes.
</p>
<p class="commentary">The project can also include a number of "Examples", each being a single
text file such as:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> Documentation/Examples/Prague.txt</span>
</pre>
<p class="commentary">which is the source for an Inform example called "The Prague Job".
(These same text files are also used by Intest to test that all of the code
samples included in the Inform documentation actually work as claimed.)
There can be any number of examples, including none; Inform currently has 468.
</p>
<p class="commentary">Each volume is divided into a series of chapters, and each chapter into a
series of sections. Examples are always placed at the ends of sections;
note that in dual-volume mode, examples are (mostly) present in both volumes,
giving them two different locations. Thus, "The Prague Job" appears in section
"More general linkages" of chapter "Scenes" of volume "Writing with Inform",
and also in section "Scripted Scenes" of chapter "Time and Plot" of volume
"The Recipe Book".
</p>
<p class="commentary firstcommentary"><a id="SP2" class="paragraph-anchor"></a><b>&#167;2. Project instructions. </b>The main instructions file for an Indoc project is, as noted earlier, at:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> Documentation/indoc-instructions.txt</span>
</pre>
<p class="commentary">An instruction file is a UTF-8 encoded plain text file. Single instructions
occupy single lines (i.e., line breaks are significant). A white-space line,
or a line whose first non-white-space character is a <span class="extract"><span class="extract-syntax">#</span></span>, are ignored.
</p>
<p class="commentary">The file should begin by specifying one or two volumes, and then, if they
will contain Examples in the above sense, by giving the special <span class="extract"><span class="extract-syntax">examples</span></span>
instruction. Inform opens thus:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> volume: Writing with Inform</span>
<span class="plain-syntax"> volume: The Inform Recipe Book (RB) = The Recipe Book.txt</span>
<span class="plain-syntax"> examples</span>
</pre>
<p class="commentary">But a simpler, single-volume project might have just:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> volume: Pandemonium 2.0 for Fun and Profit</span>
</pre>
<p class="commentary">Each volume has a title, and Indoc automatically generates an abbreviation
for it: by default, it takes the capital letters from the title, so that it
abbreviates "Writing with Inform" to WI. That same method would have made
turned "The Inform Recipe Book" into TIRB, but because we didn't want that,
we supplied our own abbreviation RB instead.
</p>
<p class="commentary">The third, also optional, part of a <span class="extract"><span class="extract-syntax">volume</span></span> instruction specifies the
leafname of the documentation source file for it. By default, this will be
the title plus <span class="extract"><span class="extract-syntax">.txt</span></span>: for example, <span class="extract"><span class="extract-syntax">Writing with Inform.txt</span></span>. But we can
use <span class="extract"><span class="extract-syntax">= X</span></span> to specify that it should be <span class="extract"><span class="extract-syntax">X</span></span> instead.
</p>
<p class="commentary">Two other project instructions exist:
</p>
<p class="commentary">If the project will contain images, then they will be looked for in a list
of places. Top of the list is a directory internal to Indoc which includes
some navigation icons such as <span class="extract"><span class="extract-syntax">arrow-up.png</span></span>. The instruction <span class="extract"><span class="extract-syntax">images: X</span></span>
adds the directory <span class="extract"><span class="extract-syntax">X</span></span> to this source list.
</p>
<p class="commentary">Lastly, the cover image for the project can be specified with an instruction
such as:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> cover: combined_cover.png</span>
</pre>
<p class="commentary">This specifies a leafname which must exist in one of the image sources
mentioned above.
</p>
<p class="commentary firstcommentary"><a id="SP3" class="paragraph-anchor"></a><b>&#167;3. Durham Core metadata. </b>If the project needs to generate Epub books, then these will need to have
some basic DC ("Durham Core") metadata supplied. For example:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> dc:title: Inform - A Design System for Interactive Fiction</span>
<span class="plain-syntax"> dc:creator: Graham Nelson and Emily Short</span>
<span class="plain-syntax"> dc:subject: Interactive Fiction</span>
<span class="plain-syntax"> dc:identifier: wwi-rb-combined</span>
</pre>
<p class="commentary">The instruction <span class="extract"><span class="extract-syntax">dc:KEY: VALUE</span></span> supplies a DC key-value pair.
</p>
<p class="commentary firstcommentary"><a id="SP4" class="paragraph-anchor"></a><b>&#167;4. Targets. </b>The instructions file typically begins as above, but then goes into a
block of general settings or instructions (for which see below); and
eventually gets around to describing one or more targets. A target
looks like so:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> IDENTIFIER {</span>
<span class="plain-syntax"> ...</span>
<span class="plain-syntax"> }</span>
</pre>
<p class="commentary">where <span class="extract"><span class="extract-syntax">IDENTIFIER</span></span> is its name. Targets, as noted in the introduction,
are different forms of the documentation we might need to produce: Inform,
for example, has targets called <span class="extract"><span class="extract-syntax">plain</span></span>, <span class="extract"><span class="extract-syntax">website</span></span>, <span class="extract"><span class="extract-syntax">linux_app</span></span> and so on.
What's important here is not that these are written to different locations
on disc (though they are) but that they have finicky little differences
in settings. The <span class="extract"><span class="extract-syntax">...</span></span> stretch of lines can specify these. For example:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> ebook {</span>
<span class="plain-syntax"> granularity = 2</span>
<span class="plain-syntax"> examples_mode = open</span>
<span class="plain-syntax"> follow: epub-css-tweaks.txt</span>
<span class="plain-syntax"> }</span>
</pre>
<p class="commentary">makes two specific settings and one instruction, all applying only for the
target <span class="extract"><span class="extract-syntax">ebook</span></span>.
</p>
<p class="commentary firstcommentary"><a id="SP5" class="paragraph-anchor"></a><b>&#167;5. Symbols. </b>The instruction <span class="extract"><span class="extract-syntax">declare: SYMBOL</span></span> creates the symbol <span class="extract"><span class="extract-syntax">SYMBOL</span></span>. These exist
so that we can mark certain paragraphs of documentation as being present in
only some of the targets.
</p>
<p class="commentary">For example, we might want Linux installation instructions to appear only
in the Linux version of a manual. To do that, we'll need the symbol:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> linux_app {</span>
<span class="plain-syntax"> ...</span>
<span class="plain-syntax"> declare: Linux</span>
<span class="plain-syntax"> ...</span>
<span class="plain-syntax"> }</span>
</pre>
<p class="commentary">In the documentation, we could then mark up a paragraph like so:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> {Linux:}To install, first...</span>
</pre>
<p class="commentary">The symbol <span class="extract"><span class="extract-syntax">indoc</span></span> is always declared, but by default no other symbols are.
Lastly, <span class="extract"><span class="extract-syntax">undeclare: SYMBOL</span></span> removes a symbol.
</p>
<p class="commentary firstcommentary"><a id="SP6" class="paragraph-anchor"></a><b>&#167;6. Other instructions. </b><span class="extract"><span class="extract-syntax">follow: I</span></span> tells Indoc to follow the instructions file <span class="extract"><span class="extract-syntax">I</span></span>. This works
rather like <span class="extract"><span class="extract-syntax">#include</span></span> in C, or similar languages. If the <span class="extract"><span class="extract-syntax">follow:</span></span> is
included inside a target block, then it affects only that target. On
other targets, the file <span class="extract"><span class="extract-syntax">I</span></span> won't even be opened, and need never exist.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">css:</span></span> specifies additional CSS (Cascading Style Sheet) styling. This
will be needed only if, for example, unusual indexing features are used,
in which different categories of index entry need different visual styling.
For example,
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> css: span.indextitle ++ {</span>
<span class="plain-syntax"> font-style: italic;</span>
<span class="plain-syntax"> }</span>
</pre>
<p class="commentary">Here the material between the braces is pure CSS, not Indoc syntax. The
notation <span class="extract"><span class="extract-syntax">++</span></span> here tells Indoc that an entirely new CSS style is being
created; <span class="extract"><span class="extract-syntax">+</span></span> would supply new lines to an existing style.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">index: NOTATION = CATEGORY OPTION</span></span> defines a new indexing markup notation;
for example,
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> index: ^{@headword} = name (invert)</span>
</pre>
<p class="commentary">says that markup notations like <span class="extract"><span class="extract-syntax">^{@Andrew Plotkin}</span></span> put a name into the index,
which should be an index entry of category <span class="extract"><span class="extract-syntax">name</span></span>, and should be inverted,
in that it will be alphabetised under "Plotkin, Andrew". The text <span class="extract"><span class="extract-syntax">headword</span></span>
in the prototype is where the entry text should appear in the notation.
</p>
<p class="commentary firstcommentary"><a id="SP7" class="paragraph-anchor"></a><b>&#167;7. Miscellaneous settings. </b>There are a great many of these, but most are set to sensible defaults,
and it is not compulsory to set any of them. Lines such as
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> SETTING = VALUE</span>
</pre>
<p class="commentary">change the default settings if need be. Here is an A-Z list; they're really
too miscellaneous to be grouped usefully by subject matter.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">alphabetization</span></span> sets the index sorting algorithm. The default is
<span class="extract"><span class="extract-syntax">letter-by-letter</span></span>; the alternative is <span class="extract"><span class="extract-syntax">word-by-word</span></span>. The difference is
that letter-by-letter would ignore word divisions and sort in the order
"peach", "peachpit", "peach tree"; whereas word-by-word would go for
"peach", "peach tree", "peachpit".
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">assume_Public_Library</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This
specifies whether special HTML links to the Public Library will be valid;
outside of Inform UI apps, the answer is definitely no.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">change_logs_directory</span></span> is the path to a directory holding Inform release
change log files. By default, this will be <span class="extract"><span class="extract-syntax">Documentation/Change Logs</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">contents_leafname</span></span> is the (unextended) leafname to give the HTML contents
page. The default is <span class="extract"><span class="extract-syntax">index</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">contents_expandable</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This sets
whether Javascript-powered "expand" buttons are to be used in the contents
page, and has effect only on the Midnight navigation design.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">css_source_file</span></span> is the filename of the CSS style sheet to use. The default
is the <span class="extract"><span class="extract-syntax">base.css</span></span> file included in the Indoc distribution.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">definitions_filename</span></span> is the filename to use if you would like Indoc to
output a special file of Inform phrase definitions, for use by Inform itself
when it generates indexes. The default for this is <span class="extract"><span class="extract-syntax">definitions.html</span></span>. This
has nothing to do with the <span class="extract"><span class="extract-syntax">definitions_index_filename</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">definitions_index_filename</span></span> is the leafname to use for the General Index
in the documentation. The default is <span class="extract"><span class="extract-syntax">general_index.html</span></span>. This
has nothing to do with the <span class="extract"><span class="extract-syntax">definitions_filename</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">destination</span></span> is the directory into which output is generated. The default
is <span class="extract"><span class="extract-syntax">Documentation/Output</span></span>. Note that specifying <span class="extract"><span class="extract-syntax">-to X</span></span> at the command line
overrides this setting: if <span class="extract"><span class="extract-syntax">-to</span></span> is used, <span class="extract"><span class="extract-syntax">destination</span></span> is ignored.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">examples_directory</span></span> is the directory holding the Example files. The default
is <span class="extract"><span class="extract-syntax">Documentation/Examples</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">examples_alphabetical_leafname</span></span> is the leafname to use for the alphabetical
index of examples in the documentation. The default is <span class="extract"><span class="extract-syntax">examples_alphabetical.html</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">examples_granularity</span></span> is 1, 2, or 3. It can never be less than <span class="extract"><span class="extract-syntax">granularity</span></span>,
and by default is equal to it. It specifies where examples should appear:
at the end of the relevant volume (1), chapter (2), or section (3).
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">examples_mode</span></span> is <span class="extract"><span class="extract-syntax">open</span></span> or <span class="extract"><span class="extract-syntax">openable</span></span>, and is by default <span class="extract"><span class="extract-syntax">open</span></span>. Open means
that an example has its full contents visible by default; openable means that
the contents are hidden behind a Javascript-powered button which causes them
to be revealed.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">examples_numerical_leafname</span></span> is the leafname to use for the numerical
index of examples in the documentation. The default is <span class="extract"><span class="extract-syntax">examples_numerical.html</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">examples_thematic_leafname</span></span> is the leafname to use for the thematic
index of examples in the documentation. The default is <span class="extract"><span class="extract-syntax">examples_thematic.html</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">format</span></span> is the most important of all the settings, and is <span class="extract"><span class="extract-syntax">HTML</span></span> or <span class="extract"><span class="extract-syntax">text</span></span>,
but by default <span class="extract"><span class="extract-syntax">HTML</span></span> unless the target name is <span class="extract"><span class="extract-syntax">plain</span></span>, in which case <span class="extract"><span class="extract-syntax">text</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">granularity</span></span> is 1, 2, or 3. The default is 3 unless the target is called
<span class="extract"><span class="extract-syntax">webpage</span></span> or <span class="extract"><span class="extract-syntax">plain</span></span>, in which case it is 1. This specifies how much the
documentation is broken down into pieces. 1 means "each volume in a single
HTML file"; 2 means "each chapter", 3 means "each section". Low granularity
means fewer but larger files, high granularity more but smaller files.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">html_for_Inform_application</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This
specifies whether the HTML is for use inside the Inform UI application, and
can therefore use links with the special HTTP transports only available there.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">images_copy</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">yes</span></span>. In this mode,
any needed image files are copied into place into the <span class="extract"><span class="extract-syntax">images_path</span></span>. (The
alternative assumes they are already there, and should be used if <span class="extract"><span class="extract-syntax">images_path</span></span>
is some URL external to the HTML being generated.)
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">images_path</span></span> is where the generated HTML expects to find its image files.
The default is <span class="extract"><span class="extract-syntax">~~/Images/</span></span>, where <span class="extract"><span class="extract-syntax">~~</span></span> means the destination directory:
that is, the default is a subdirectory called <span class="extract"><span class="extract-syntax">Images</span></span> of the destination.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">inform_definitions_mode</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This
is cosmetic, and provides extra styling on lines of documentation giving the
syntax for Inform phrases.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">javascript</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">yes</span></span>. This indicates
whetber Indoc is allowed to compile Javascript, or has to stick to inactive
HTML.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">javascript_paste_method</span></span> can be <span class="extract"><span class="extract-syntax">none</span></span>, <span class="extract"><span class="extract-syntax">Andrew</span></span> or <span class="extract"><span class="extract-syntax">David</span></span>. The default
is <span class="extract"><span class="extract-syntax">none</span></span>. The difference relates to how "paste Inform source" links are
implemented inside the Inform application: <span class="extract"><span class="extract-syntax">Andrew</span></span> mode is suitable for
most platforms, but <span class="extract"><span class="extract-syntax">David</span></span> is needed for Windows.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">link_to_extensions_index</span></span> is meaningful only if <span class="extract"><span class="extract-syntax">html_for_Inform_application</span></span>
is set, and specifies the URL of the Extensions index inside the app.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">manifest_leafname</span></span> is meaningful only if <span class="extract"><span class="extract-syntax">html_for_Inform_application</span></span>
is set, and is by default <span class="extract"><span class="extract-syntax">manifest.txt</span></span>. This provides a cross-reference
list of files generated by Indoc.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">navigation</span></span> is the design used for navigation links in the HTML produced.
There are currently six designs, called <span class="extract"><span class="extract-syntax">architect</span></span>, <span class="extract"><span class="extract-syntax">lacuna</span></span>, <span class="extract"><span class="extract-syntax">midnight</span></span>,
<span class="extract"><span class="extract-syntax">roadsign</span></span>, <span class="extract"><span class="extract-syntax">twilight</span></span>, and <span class="extract"><span class="extract-syntax">unsigned</span></span>; the default is <span class="extract"><span class="extract-syntax">roadsign</span></span>, though
inside the Inform applications, the design chosen is usually <span class="extract"><span class="extract-syntax">architect</span></span>.
If the format is <span class="extract"><span class="extract-syntax">text</span></span> not <span class="extract"><span class="extract-syntax">HTML</span></span>, then the design is always <span class="extract"><span class="extract-syntax">lacuna</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">retina_images</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This indicates
whether MacOS/iOS "retina" versions of the paste and create icons are
available: <span class="extract"><span class="extract-syntax">paste@2x.png</span></span> and <span class="extract"><span class="extract-syntax">create@2x.png</span></span> respectively.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">support_creation</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This indicates
whether the Examples have a "create" button which creates a new Inform
project demonstrating them in action; this can only be done in the UI apps,
so it should always be <span class="extract"><span class="extract-syntax">no</span></span> unless <span class="extract"><span class="extract-syntax">html_for_Inform_application</span></span> is <span class="extract"><span class="extract-syntax">yes</span></span>.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">suppress_fonts</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. If <span class="extract"><span class="extract-syntax">yes</span></span>, this
strips out lists of fonts to use in CSS, leaving only whether they are
<span class="extract"><span class="extract-syntax">monospace</span></span> or not.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">toc_granularity</span></span> is 1, 2, or 3. It can never be less than <span class="extract"><span class="extract-syntax">granularity</span></span>,
and by default is 3. It shows the level of detail in the table of contents: 1
means volumes, 2 means volumes and chapters, 3 goes down to sections.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">top_and_tail</span></span> specifies a prototype HTML file to follow for the more
important HTML pages generated by Indoc. The default is not to. If
this exists, it can provide a surround for the HTML we generate &mdash; for
example, it can contain website-specific navigation, or a banner across
the top. The prototype should somewhere include the text <span class="extract"><span class="extract-syntax">[TEXT]</span></span>, and
this will be replaced with whatever Indoc generates.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">top_and_tail_sections</span></span> is the same as <span class="extract"><span class="extract-syntax">top_and_tail</span></span>, but for individual
section files.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">treat_code_as_verbatim</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">yes</span></span>. This
affects the styling of marked-up code material in documentation. Without
it, code markup is largely unavailable.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">wrapper</span></span> can be <span class="extract"><span class="extract-syntax">EPUB</span></span>, <span class="extract"><span class="extract-syntax">zip</span></span> or <span class="extract"><span class="extract-syntax">none</span></span>. The default is <span class="extract"><span class="extract-syntax">none</span></span>. The wrapper
is put around the whole mass of generated HTML; <span class="extract"><span class="extract-syntax">EPUB</span></span> makes the result an
Epub-format ebook.
</p>
<p class="commentary"><span class="extract"><span class="extract-syntax">XHTML</span></span> can be <span class="extract"><span class="extract-syntax">yes</span></span> or <span class="extract"><span class="extract-syntax">no</span></span>. The default is <span class="extract"><span class="extract-syntax">no</span></span>. This forces the HTML we
produce to conform to XHTML 1.1 Strict. If the <span class="extract"><span class="extract-syntax">wrapper</span></span> is <span class="extract"><span class="extract-syntax">EPUB</span></span>, then
this is automatically set to <span class="extract"><span class="extract-syntax">yes</span></span>.
</p>
<nav role="progress"><div class="progresscontainer">
<ul class="progressbar"><li class="progressprev"><a href="M-iti.html">&#10094;</a></li><li class="progresscurrentchapter">M</li><li class="progresssection"><a href="M-iti.html">iti</a></li><li class="progresscurrent">vai</li><li class="progresssection"><a href="M-dm.html">dm</a></li><li class="progresssection"><a href="M-rc.html">rc</a></li><li class="progresschapter"><a href="1-bsc.html">1</a></li><li class="progresschapter"><a href="2-ss.html">2</a></li><li class="progresschapter"><a href="3-iu.html">3</a></li><li class="progresschapter"><a href="4-nd.html">4</a></li><li class="progressnext"><a href="M-dm.html">&#10095;</a></li></ul></div>
</nav><!--End of weave-->
</main>
</body>
</html>